neue script, check file age

This commit is contained in:
2026-03-25 11:34:33 +01:00
parent 3e68e96c8a
commit 8167a3ffff
3 changed files with 166 additions and 3 deletions

View File

@@ -0,0 +1,70 @@
"""
Használati útmutató / Usage:
1. Telepítés / Installation:
pip install markdown-pdf
2. Futtatás / Execution:
- Aktuális könyvtár bejárása:
python Scripts/python/md_to_pdf_recursive.py
- Konkrét könyvtár megadása:
python Scripts/python/md_to_pdf_recursive.py Dev/APS-SFTP01
A script rekurzívan végigjárja a megadott könyvtárat, és minden .md fájl mellé
létrehoz egy azonos nevű .pdf fájlt. A .git, .venv és __pycache__ könyvtárakat kihagyja.
"""
import os
import sys
from markdown_pdf import Section, MarkdownPdf
def convert_md_to_pdf(root_dir):
"""
Rekurzívan végigjárja a megadott könyvtárat és minden .md fájlból PDF-et készít.
"""
print(f"Keresés indítása a következő könyvtárban: {root_dir}")
# Kizárandó könyvtárak (pl. git, virtuális környezet)
exclude_dirs = {'.git', '.venv', '__pycache__', 'node_modules'}
count = 0
for root, dirs, files in os.walk(root_dir):
# Alkönyvtárak szűrése (helyben módosítva a dirs listát)
dirs[:] = [d for d in dirs if d not in exclude_dirs]
for file in files:
if file.endswith(".md"):
md_path = os.path.join(root, file)
pdf_path = os.path.splitext(md_path)[0] + ".pdf"
print(f"Konvertálás: {md_path} -> {pdf_path}")
try:
# Markdown olvasása
with open(md_path, "r", encoding="utf-8") as f:
md_content = f.read()
# PDF generálása
pdf = MarkdownPdf(toc_level=2)
pdf.add_section(Section(md_content, toc=False))
pdf.save(pdf_path)
count += 1
except Exception as e:
print(f"Hiba a fájl feldolgozása közben ({md_path}): {e}")
print(f"\nKész! Összesen {count} fájl lett konvertálva.")
if __name__ == "__main__":
# Ha nincs megadva útvonal, az aktuális könyvtárat használja
target_path = sys.argv[1] if len(sys.argv) > 1 else "."
# Ellenőrizzük a függőséget
try:
import markdown_pdf
except ImportError:
print("Hiba: A 'markdown-pdf' könyvtár nincs telepítve.")
print("Telepítés: pip install markdown-pdf")
sys.exit(1)
convert_md_to_pdf(target_path)