gallery-dl是一個命令列程序,用於從多個圖像託管網站下載圖像庫和集合(請參閱支援的網站)。它是一個跨平台工具,具有許多配置選項和強大的檔案命名功能。
內容
依賴關係
選修的
安裝
點
獨立可執行檔
每晚建構
折斷
巧克力口味
舀
自製
Mac埠
碼頭工人
用法
範例
配置
文件
地點
驗證
使用者名稱和密碼
餅乾
開放認證
Python 3.4+
要求
yt-dlp 或 youtube-dl:HLS/DASH 影片下載、 ytdl
集成
FFmpeg:Pixiv Ugoira 轉換
mkvmerge:準確的 Ugoira 幀時間碼
PySocks:SOCKS 代理支持
brotli 或 brotlicffi:Brotli 壓縮支援
zstandard:Zstandard 壓縮支持
PyYAML:YAML 設定檔支持
toml:TOML 設定檔支援 Python<3.11
SecretStorage: --cookies-from-browser
的 GNOME 金鑰環密碼
gallery-dl的穩定版本分佈在 PyPI 上,可使用 pip 輕鬆安裝或升級:
python3 -m pip install -U gallery-dl
也可以使用 pip 直接從 GitHub 安裝最新的開發版本:
python3 -m pip install -U -I --no-deps --no-cache-dir https://github.com/mikf/gallery-dl/archive/master.tar.gz
注意:Windows 使用者應使用py -3
而不是python3
。
建議使用最新版本的pip,包括必備的setuptools
和wheel
。要確保這些包是最新的,請運行
python3 -m pip install --升級 pip setuptools 輪
帶有 Python 解釋器和所需 Python 套件的預先建置可執行檔可用於
Windows(需要 Microsoft Visual C++ 可再發行元件套件 (x86))
Linux
從最新提交建置的可執行檔可以在以下位置找到
https://github.com/gdl-org/builds/releases
使用 Snapd 支援的發行版的 Linux 用戶可以從 Snap Store 安裝gallery-dl :
快照安裝 gallery-dl
安裝了 Chocolatey 的 Windows 使用者可以從 Chocolatey 社群包儲存庫安裝gallery-dl :
choco 安裝 gallery-dl
gallery-dl也可在 Windows 使用者的 Scoop「主」儲存桶中使用:
舀安裝畫廊-dl
對於使用 Homebrew 的 macOS 或 Linux 使用者:
brew 安裝 gallery-dl
對於使用 MacPorts 的 macOS 使用者:
sudo port 安裝 gallery-dl
使用儲存庫中的 Dockerfile:
git 克隆 https://github.com/mikf/gallery-dl.gitcd gallery-dl/ docker build -t gallery-dl:latest 。
從 Docker Hub 拉取鏡像:
docker pull mikf123/gallery-dl docker 標籤 mikf123/gallery-dl gallery-dl
從 GitHub 容器註冊表中提取鏡像:
docker pull ghcr.io/mikf/gallery-dl docker 標籤 ghcr.io/mikf/gallery-dl gallery-dl
要執行容器,您可能需要在主機上附加一些目錄,以便設定檔和下載可以在運行期間保留。
確保下載儲存庫中的範例設定檔引用並將其放置在已安裝的磁碟區位置或觸摸那裡的空檔案。
如果您為容器指定了不同的標籤或正在使用 podman,請務必進行調整。 如果您不確定,請執行docker image ls
檢查名稱。
這將在每次使用後刪除容器,因此您將始終擁有一個全新的運行環境。如果您設定 ci-cd 管道來自動建立容器,您也可以新增--pull=newer
標誌,這樣當您執行它時,docker 將檢查是否有更新的容器並在運行之前下載它。
docker run --rm -v $HOME/Downloads/:/gallery-dl/ -v $HOME/.config/gallery-dl/gallery-dl.conf:/etc/gallery-dl.conf -it gallery-dl:最新的
您也可以為 shell 新增「gallery-dl」的別名,或建立一個簡單的 bash 腳本並將其放在 $PATH 中的某個位置以充當此命令的填充程式。
要使用gallery-dl,只需使用您希望從中下載圖像的 URL 來呼叫它:
gallery-dl [選項]... URL...
使用gallery-dl --help
或查看 docs/options.md 以取得所有命令列選項的完整清單。
下載圖片;在本例中,來自 danbooru 透過標籤搜尋「bonocho」:
gallery-dl "https://danbooru.donmai.us/posts?tags=bonocho"
從支援使用使用者名稱和密碼進行身份驗證的網站取得影像的直接 URL:
gallery-dl -g -u "<使用者名稱>" -p "<密碼>" "https://twitter.com/i/web/status/604341487988576256"
按章節號碼和語言過濾漫畫章節:
gallery-dl --chapter-filter "10 <= 章 < 20" -o "lang=fr" "https://mangadex.org/title/59793dd0-a2d8-41a2-9758-8197287a8539"
在遠端資源中搜尋 URL 並從中下載圖像:
(找不到提取器的 URL 將被默默忽略)
gallery-dl“r:https://pastebin.com/raw/FLwrCYsT”
如果網站的位址對於其提取器是非標準的,您可以在 URL 前面加上提取器的名稱作為前綴,以強制使用特定的提取器:
gallery-dl“tumblr:https://sometumblrblog.example”
gallery-dl的設定檔使用基於 JSON 的檔案格式。
所有可用設定選項及其描述的清單可以在 https://gdl-org.github.io/docs/configuration.html 中找到。
有關可用選項設定為其預設值的預設設定文件,請參閱 docs/gallery-dl.conf。
有關更多涉及設定和選項用法的註解範例,請參閱 docs/gallery-dl-example.conf。
gallery-dl在以下位置搜尋設定檔:
視窗:
( %USERPROFILE%
通常指使用者的主目錄,即C:Users<username>
)
%APPDATA%gallery-dlconfig.json
%USERPROFILE%gallery-dlconfig.json
%USERPROFILE%gallery-dl.conf
Linux、macOS 等:
/etc/gallery-dl.conf
${XDG_CONFIG_HOME}/gallery-dl/config.json
${HOME}/.config/gallery-dl/config.json
${HOME}/.gallery-dl.conf
當作為可執行檔運行時, gallery-dl也會在與所述可執行檔相同的目錄中尋找gallery-dl.conf
檔。
一次可以使用多個設定檔。在這種情況下,第一個檔案之後的檔案中的任何值都會合併到已載入的設定中,並可能覆蓋先前的設定。
某些提取器要求您以使用者名稱和密碼對的形式提供有效的登入憑證。這對於nijie
是必需的,對於aryion
、 danbooru
、 e621
、 exhentai
、 idolcomplex
、 imgbb
twitter
inkbunny
、 mangadex
、 mangoxo
、 pillowfort
、 sankaku
、 subscribestar
、 mangoxo 、 tapas
、 tsumino
、 zerochan
作為 tapa、Fapa 的可選。
您可以在設定檔中設定必要的信息
{ "extractor": { "twitter": { "使用者名稱": "<使用者名稱>", "密碼": "<密碼>" } } }
或者您可以直接透過-u/--username
和-p/--password
或透過-o/--option
命令列選項提供它們
gallery-dl -u "<使用者名稱>" -p "<密碼>" "URL"gallery-dl -o "使用者名稱=<使用者名稱>" -o "密碼=<密碼>" "URL"
對於因 CAPTCHA 或類似問題而無法使用使用者名稱和密碼登入或尚未實施的網站,您可以使用瀏覽器登入工作階段中的 cookie 並將其輸入到gallery-dl 。
這可以透過設定檔中的 cookies 選項來完成,方法是指定
由瀏覽器外掛程式匯出的 Mozilla/Netscape 格式 cookies.txt 檔案的路徑
(例如,對於 Chrome,在本地獲取 cookies.txt,對於 Firefox,匯出 Cookie)
從瀏覽器的 Web 開發人員工具收集的名稱/值對列表
(在 Chrome 中、在 Firefox 中)
從中提取 cookie 的瀏覽器名稱
(支援的瀏覽器是基於 Chromium 的瀏覽器、Firefox 和 Safari)
例如:
{ “extractor”:{ “instagram”:{ “cookies”:“$HOME/path/to/cookies.txt” }, "patreon": { "cookies": { "session_id": "K1T57EKu19TR49C51CDjOJoXNQLF7VbdVOiBrC9ye0a" } }, "twitter": { "cookies": ["firefox"] } } }
您也可以使用--cookies
命令列選項指定 cookies.txt 文件
或使用--cookies-from-browser
從中提取 cookie 的瀏覽器:
gallery-dl --cookies“$HOME/path/to/cookies.txt”“URL”gallery-dl --cookies-from-browser firefox“URL”
gallery-dl支援透過 OAuth 對某些提取器進行使用者身份驗證。這對於pixiv
是必要的,對於deviantart
、 flickr
、 reddit
、 smugmug
、 tumblr
和mastodon
實例是可選的。
將您的帳戶連結到gallery-dl使其能夠代表您的帳戶發出請求,並使其能夠存取公共用戶無法存取的資源。
為此,首先使用oauth:<sitename>
作為參數呼叫它。例如:
gallery-dl oauth:flickr
您將被傳送到該網站的授權頁面,並要求授予gallery-dl 的讀取權限。授權它,您將看到一個或多個“令牌”,應將其添加到您的設定檔中。
若要使用mastodon
實例進行身份驗證,請使用oauth:mastodon:<instance>
作為參數執行gallery-dl 。例如:
gallery-dl oauth:mastodon:pawoo.net gallery-dl oauth:mastodon:https://mastodon.social/