YouTubeDownloader v1.1.2
YouTube content downloader
|
Das YouTubeDownloader Tool ist nach dem Model-View-Controller (MVC) Pattern aufgebaut, wobei eine klare Trennung zwischen View und Controller nicht möglich ist.
Der Einstiegspunkt in die Anwendung ist die Datei Source/app.py
. Sie startet den Startbildschirm und dann das Anwendungsfenster.
Das gestartete Anwendungsfenster wird von den verschiedenen View Controllern (Source/Controller
) gesteuert. Diese verarbeiten die Benutzereingaben, aktualisieren die im Model gespeicherten Daten und aktualisieren auf dieser Basis die View. Es ist eine Mischung aus View und Controller.
Ressourcenintensive Operationen wie z.B. der Download von YouTube Inhalten werden in Threads ausgelagert und befinden sich unter Source/Worker
. Dadurch wird der Main-Thread nicht blockiert, so dass die GUI nicht einfriert.
Anwendungsweite, globale Konstanten und andere Daten werden in Util/app_data.py
gespeichert.
Die Version ist in Source/version.py
gespeichert und wird manuell aktualisiert. Im Ordner Executable
befindet sich ein Hilfsskript (Executable/generate_version_file.py
), welches die aktuelle Versionsinfo-Datei erzeugt, die für die Generierung der Exe-Datei benötigt wird.
Die Generierung der EXE erfolgt mit Hilfe des pyinstallers
. In der Datei Executable/generate_executable.py
werden die notwendigen Parameter angegeben. Durch Ausführen des Batch-Skripts wird die EXE im Verzeichnis Executable/bin
erzeugt.
Die Generierung des Installers erfolgt mit Hilfe von InnoSetup6. In der Datei Executable/setup.iss
sind die notwendigen Parameter spezifiziert. Durch Ausführen des Batch-Skripts Executable/generate_setup.bat
wird der Installer EXE im Ordner Executable/bin
erzeugt.
B_DEBUG
im Code auf False
setzenDocumentation/Installation/requirements.txt
, Documentation/Installation/constraints.txt
) (und optional Python-Version) aktualisierenL_ALLOWED_THIRD_PARTY_PACKAGES
in Executable/check_included_packages.py
)L_EXCLUDE_MODULES
in Executable/generate_executable.py
).v1.0.0
) & Release erstellen