gallery-dl ist ein Befehlszeilenprogramm zum Herunterladen von Bildergalerien und Sammlungen von mehreren Bild-Hosting-Sites (siehe Unterstützte Sites). Es ist ein plattformübergreifendes Tool mit vielen Konfigurationsoptionen und leistungsstarken Funktionen zur Dateibenennung.
Inhalt
Abhängigkeiten
Optional
Installation
Pip
Eigenständige ausführbare Datei
Nächtliche Builds
Schnapp
Schokoladend
Scoop
Homebrew
MacPorts
Docker
Verwendung
Beispiele
Konfiguration
Dokumentation
Standorte
Authentifizierung
Benutzername und Passwort
Kekse
OAuth
Python 3.4+
Anfragen
yt-dlp oder youtube-dl: HLS/DASH-Video-Downloads, ytdl
Integration
FFmpeg: Pixiv Ugoira-Konvertierung
mkvmerge: Genaue Ugoira-Frame-Timecodes
PySocks: SOCKS-Proxy-Unterstützung
brotli oder brotlicffi: Brotli-Komprimierungsunterstützung
zstandard: Zstandard-Komprimierungsunterstützung
PyYAML: Unterstützung für YAML-Konfigurationsdateien
toml: TOML-Konfigurationsdateiunterstützung für Python<3.11
SecretStorage: GNOME-Schlüsselbund-Passwörter für --cookies-from-browser
Die stabilen Versionen von gallery-dl werden auf PyPI verteilt und können einfach mit pip installiert oder aktualisiert werden:
python3 -m pip install -U gallery-dl
Die Installation der neuesten Entwicklerversion direkt von GitHub kann auch mit pip erfolgen:
python3 -m pip install -U -I --no-deps --no-cache-dir https://github.com/mikf/gallery-dl/archive/master.tar.gz
Hinweis: Windows-Benutzer sollten py -3
anstelle von python3
verwenden.
Es wird empfohlen, die neueste Version von pip zu verwenden, einschließlich der wesentlichen Pakete setuptools
und wheel
. Um sicherzustellen, dass diese Pakete auf dem neuesten Stand sind, führen Sie Folgendes aus:
python3 -m pip install --upgrade pip setuptools Rad
Es stehen vorgefertigte ausführbare Dateien mit einem Python-Interpreter und den erforderlichen Python-Paketen zur Verfügung
Windows (Erfordert Microsoft Visual C++ Redistributable Package (x86))
Linux
Ausführbare Dateien, die aus dem neuesten Commit erstellt wurden, finden Sie unter
https://github.com/gdl-org/builds/releases
Linux-Benutzer, die eine von Snapd unterstützte Distribution verwenden, können gallery-dl aus dem Snap Store installieren:
snap install gallery-dl
Windows-Benutzer, die Chocolatey installiert haben, können gallery-dl aus dem Chocolatey Community Packages-Repository installieren:
choco install gallery-dl
gallery-dl ist auch im Scoop-„Haupt“-Bucket für Windows-Benutzer verfügbar:
scoop install gallery-dl
Für macOS- oder Linux-Benutzer, die Homebrew verwenden:
brew install gallery-dl
Für macOS-Benutzer mit MacPorts:
sudo port install gallery-dl
Verwendung der Docker-Datei im Repository:
Git-Klon https://github.com/mikf/gallery-dl.gitcd gallery-dl/ docker build -t gallery-dl:latest .
Image vom Docker Hub abrufen:
Docker Pull mikf123/gallery-dl Docker-Tag mikf123/gallery-dl gallery-dl
Image aus GitHub Container Registry abrufen:
Docker Pull ghcr.io/mikf/gallery-dl Docker-Tag ghcr.io/mikf/gallery-dl gallery-dl
Um den Container auszuführen, möchten Sie wahrscheinlich einige Verzeichnisse auf dem Host anhängen, damit die Konfigurationsdatei und die Downloads über alle Ausführungen hinweg bestehen bleiben.
Stellen Sie sicher, dass Sie entweder die Referenz der Beispielkonfigurationsdatei im Repo herunterladen und am Speicherort des bereitgestellten Volumes ablegen oder dort auf eine leere Datei tippen.
Wenn Sie dem Container ein anderes Tag gegeben haben oder Podman verwenden, stellen Sie sicher, dass Sie es anpassen. Führen Sie docker image ls
aus, um den Namen zu überprüfen, wenn Sie sich nicht sicher sind.
Dadurch wird der Behälter nach jedem Gebrauch entfernt, sodass Sie immer eine frische Umgebung für die Ausführung haben. Wenn Sie eine ci-cd-Pipeline zum automatischen Erstellen des Containers einrichten, können Sie auch das Flag --pull=newer
hinzufügen, sodass Docker bei der Ausführung prüft, ob ein neuerer Container vorhanden ist, und ihn vor der Ausführung herunterlädt.
docker run --rm -v $HOME/Downloads/:/gallery-dl/ -v $HOME/.config/gallery-dl/gallery-dl.conf:/etc/gallery-dl.conf -it gallery-dl: letzte
Sie können Ihrer Shell auch einen Alias für „gallery-dl“ hinzufügen oder ein einfaches Bash-Skript erstellen und es irgendwo in Ihrem $PATH ablegen, um als Shim für diesen Befehl zu fungieren.
Um gallery-dl zu verwenden, rufen Sie es einfach mit den URLs auf, von denen Sie Bilder herunterladen möchten:
gallery-dl [OPTIONEN]... URLS...
Verwenden Sie gallery-dl --help
oder sehen Sie sich docs/options.md an, um eine vollständige Liste aller Befehlszeilenoptionen zu erhalten.
Bilder herunterladen; in diesem Fall von danbooru über die Tag-Suche nach „bonocho“:
gallery-dl „https://danbooru.donmai.us/posts?tags=bonocho“
Rufen Sie die direkte URL eines Bildes von einer Website ab, die die Authentifizierung mit Benutzername und Passwort unterstützt:
gallery-dl -g -u "<Benutzername>" -p "<Passwort>" "https://twitter.com/i/web/status/604341487988576256"
Manga-Kapitel nach Kapitelnummer und Sprache filtern:
gallery-dl --chapter-filter "10 <= Kapitel < 20" -o "lang=fr" "https://mangadex.org/title/59793dd0-a2d8-41a2-9758-8197287a8539"
Durchsuchen Sie eine Remote-Ressource nach URLs und laden Sie Bilder von ihnen herunter:
(URLs, für die kein Extraktor gefunden werden kann, werden stillschweigend ignoriert.)
gallery-dl „r:https://pastebin.com/raw/FLwrCYsT“
Wenn die Adresse einer Site für ihren Extraktor nicht dem Standard entspricht, können Sie der URL den Namen des Extraktors voranstellen, um die Verwendung eines bestimmten Extraktors zu erzwingen:
gallery-dl „tumblr:https://sometumblrblog.example“
Konfigurationsdateien für gallery-dl verwenden ein JSON-basiertes Dateiformat.
Eine Liste aller verfügbaren Konfigurationsoptionen und deren Beschreibungen finden Sie unter https://gdl-org.github.io/docs/configuration.html.
Eine Standardkonfigurationsdatei mit verfügbaren Optionen, die auf ihre Standardwerte gesetzt sind, finden Sie unter docs/gallery-dl.conf.
Ein kommentiertes Beispiel mit komplexeren Einstellungen und Optionsverwendung finden Sie unter docs/gallery-dl-example.conf.
gallery-dl sucht an den folgenden Orten nach Konfigurationsdateien:
Windows:
( %USERPROFILE%
bezieht sich normalerweise auf das Home-Verzeichnis eines Benutzers, z. B. C:Users<username>
)
%APPDATA%gallery-dlconfig.json
%USERPROFILE%gallery-dlconfig.json
%USERPROFILE%gallery-dl.conf
Linux, macOS usw.:
/etc/gallery-dl.conf
${XDG_CONFIG_HOME}/gallery-dl/config.json
${HOME}/.config/gallery-dl/config.json
${HOME}/.gallery-dl.conf
Wenn gallery-dl als ausführbare Datei ausgeführt wird, sucht es auch nach einer gallery-dl.conf
Datei im selben Verzeichnis wie die ausführbare Datei.
Es ist möglich, mehr als eine Konfigurationsdatei gleichzeitig zu verwenden. In diesem Fall werden alle Werte aus Dateien nach der ersten mit den bereits geladenen Einstellungen zusammengeführt und überschreiben möglicherweise die vorherigen.
Bei einigen Extraktoren müssen Sie gültige Anmeldeinformationen in Form eines Benutzernamen-Passwort-Paares angeben. Dies ist für nijie
erforderlich und optional für aryion
, danbooru
, e621
, exhentai
, idolcomplex
, imgbb
, inkbunny
, mangadex
, mangoxo
, pillowfort
, sankaku
, subscribestar
, tapas
, tsumino
, twitter
und zerochan
.
Sie können die notwendigen Informationen in Ihrer Konfigurationsdatei festlegen
{ "extractor": { "twitter": { "username": "<username>", "password": "<password>" } } }
Sie können sie aber auch direkt über die -u/--username
und -p/--password
oder über die Befehlszeilenoptionen -o/--option
bereitstellen
gallery-dl -u "<Benutzername>" -p "<Passwort>" "URL"gallery-dl -o "Benutzername=<Benutzername>" -o "password=<Passwort>" "URL"
Für Websites, bei denen die Anmeldung mit Benutzername und Passwort aufgrund von CAPTCHA oder ähnlichem nicht möglich ist oder noch nicht implementiert wurde, können Sie die Cookies aus einer Browser-Anmeldesitzung verwenden und sie in gallery-dl eingeben.
Dies kann über die Cookies-Option in Ihrer Konfigurationsdatei erfolgen, indem Sie Folgendes angeben
Der Pfad zu einer Cookies.txt-Datei im Mozilla/Netscape-Format, die von einem Browser-Add-on exportiert wurde
(z. B. Cookies.txt LOKAL für Chrome abrufen, Cookies exportieren für Firefox)
eine Liste von Name-Wert-Paaren, die von den Webentwicklertools Ihres Browsers erfasst wurden
(in Chrome, in Firefox)
der Name eines Browsers, aus dem Cookies extrahiert werden sollen
(Unterstützte Browser sind Chromium-basierte Browser, Firefox und Safari)
Zum Beispiel:
{ "extractor": { "instagram": { "cookies": "$HOME/path/to/cookies.txt" }, „patreon“: { „cookies“: { „session_id“: „K1T57EKu19TR49C51CDjOJoXNQLF7VbdVOiBrC9ye0a“ } }, „twitter“: { „cookies“: [„firefox“] } } }
Sie können eine Cookies.txt-Datei auch mit der Befehlszeilenoption --cookies
angeben
oder einen Browser zum Extrahieren von Cookies mit --cookies-from-browser
:
gallery-dl --cookies "$HOME/path/to/cookies.txt" "URL"gallery-dl --cookies-from-browser Firefox "URL"
gallery-dl unterstützt für einige Extraktoren die Benutzerauthentifizierung über OAuth. Dies ist für pixiv
erforderlich und optional für deviantart
, flickr
, reddit
, smugmug
, tumblr
und mastodon
Instanzen.
Wenn Sie Ihr Konto mit gallery-dl verknüpfen, erhält dieses die Möglichkeit, im Namen Ihres Kontos Anfragen zu stellen, und ermöglicht ihm den Zugriff auf Ressourcen, die andernfalls für einen öffentlichen Benutzer nicht verfügbar wären.
Rufen Sie dazu zunächst mit oauth:<sitename>
als Argument auf. Zum Beispiel:
gallery-dl oauth:flickr
Sie werden zur Autorisierungsseite der Website weitergeleitet und aufgefordert, Lesezugriff auf gallery-dl zu gewähren. Wenn Sie es autorisieren, werden Ihnen ein oder mehrere „Tokens“ angezeigt, die Ihrer Konfigurationsdatei hinzugefügt werden sollten.
Um sich bei einer mastodon
-Instanz zu authentifizieren, führen Sie gallery-dl mit oauth:mastodon:<instance>
als Argument aus. Zum Beispiel:
gallery-dl oauth:mastodon:pawoo.net gallery-dl oauth:mastodon:https://mastodon.social/