Project Icon

gallery-dl

跨平台多源图库批量下载工具

gallery-dl是一款开源的命令行图片下载工具,支持从多个图片托管网站批量获取图库和收藏。这款跨平台软件提供丰富的配置选项和灵活的文件命名功能。gallery-dl能够通过多种身份验证方式访问需要登录的内容,并支持过滤、搜索和自定义输出等进阶特性。作为批量下载在线图片资源的实用工具,gallery-dl适用于需要高效获取大量图片的场景。

========== gallery-dl

gallery-dl 是一个命令行程序,用于从多个图片托管网站下载图片库和集合(参见支持的网站<docs/supportedsites.md>__)。它是一个跨平台工具,具有许多配置选项<https://gdl-org.github.io/docs/configuration.html>和强大的文件命名功能<https://gdl-org.github.io/docs/formatting.html>

|pypi| |build|

.. 目录::

依赖项

  • Python_ 3.4+
  • Requests_

可选

  • yt-dlp_ 或 youtube-dl_: HLS/DASH 视频下载,ytdl 集成
  • FFmpeg_: Pixiv Ugoira 转换
  • mkvmerge_: 准确的 Ugoira 帧时间码
  • PySocks_: SOCKS 代理支持
  • brotli_ 或 brotlicffi_: Brotli 压缩支持
  • zstandard_: Zstandard 压缩支持
  • PyYAML_: YAML 配置文件支持
  • toml_: Python<3.11 的 TOML 配置文件支持
  • SecretStorage_: --cookies-from-browser 的 GNOME 密钥环密码

安装

Pip

gallery-dl 的稳定版本在 PyPI_ 上分发,可以使用 pip_ 轻松安装或升级:

.. code:: bash

python3 -m pip install -U gallery-dl

也可以使用 pip_ 直接从 GitHub 安装最新的开发版本:

.. code:: bash

python3 -m pip install -U -I --no-deps --no-cache-dir https://github.com/mikf/gallery-dl/archive/master.tar.gz

注意:Windows 用户应使用 :code:py -3 替代 :code:python3

建议使用最新版本的 pip_,包括基本包 :code:setuptools 和 :code:wheel。 要确保这些包是最新的,请运行

.. code:: bash

python3 -m pip install --upgrade pip setuptools wheel

独立可执行文件

预构建的可执行文件(包含 Python 解释器和所需的 Python 包)可用于:

  • Windows <https://github.com/mikf/gallery-dl/releases/download/v1.27.3/gallery-dl.exe>__ (需要 Microsoft Visual C++ 可再发行包(x86)<https://aka.ms/vs/17/release/vc_redist.x86.exe>__)
  • Linux <https://github.com/mikf/gallery-dl/releases/download/v1.27.3/gallery-dl.bin>__

每日构建

| 从最新提交构建的可执行文件可在以下位置找到 | https://github.com/gdl-org/builds/releases

Snap

使用支持 Snapd_ 的 Linux 发行版的用户可以从 Snap Store 安装 gallery-dl

.. code:: bash

snap install gallery-dl

Chocolatey

安装了 Chocolatey_ 的 Windows 用户可以从 Chocolatey Community Packages 存储库安装 gallery-dl

.. code:: powershell

choco install gallery-dl

Scoop

gallery-dl 也可以通过 Scoop_ "main" bucket 为 Windows 用户使用:

.. code:: powershell

scoop install gallery-dl

Homebrew

对于使用 Homebrew 的 macOS 或 Linux 用户:

.. code:: bash

brew install gallery-dl

MacPorts

对于使用 MacPorts 的 macOS 用户:

.. code:: bash

sudo port install gallery-dl

Docker

使用仓库中的 Dockerfile:

.. code:: bash

git clone https://github.com/mikf/gallery-dl.git
cd gallery-dl/
docker build -t gallery-dl:latest .

Docker Hub <https://hub.docker.com/r/mikf123/gallery-dl>__ 拉取镜像:

.. code:: bash

docker pull mikf123/gallery-dl
docker tag mikf123/gallery-dl gallery-dl

GitHub Container Registry <https://github.com/mikf/gallery-dl/pkgs/container/gallery-dl>__ 拉取镜像:

.. code:: bash

docker pull ghcr.io/mikf/gallery-dl
docker tag ghcr.io/mikf/gallery-dl gallery-dl

要运行容器,您可能需要挂载主机上的一些目录,以便配置文件和下载内容可以在多次运行之间保持。

确保下载仓库中引用的示例配置文件并将其放置在挂载卷的位置,或在那里创建一个空文件。

如果您给容器一个不同的标签或使用 podman,请确保进行相应调整。运行 docker image ls 检查名称(如果不确定)。

这将在每次使用后删除容器,因此您始终有一个全新的环境来运行。如果您设置了 ci-cd 管道来自动构建容器,还可以添加 --pull=newer 标志,这样当您运行时,docker 会检查是否有更新的容器并在运行之前下载它。

.. code:: bash

docker run --rm  -v $HOME/Downloads/:/gallery-dl/ -v $HOME/.config/gallery-dl/gallery-dl.conf:/etc/gallery-dl.conf -it gallery-dl:latest

您还可以为 "gallery-dl" 添加一个别名到您的 shell 中,或创建一个简单的 bash 脚本并将其放在 $PATH 中的某个位置,作为此命令的包装器。

使用方法

要使用 gallery-dl,只需使用您希望下载图片的 URL 调用它:

.. code:: bash

gallery-dl [选项]... URL...

使用 :code:gallery-dl --help 或查看 <docs/options.md>__ 获取所有命令行选项的完整列表。

示例

下载图片;在本例中,通过标签搜索 'bonocho' 从 danbooru 下载:

.. code:: bash

gallery-dl "https://danbooru.donmai.us/posts?tags=bonocho"

从支持用户名和密码认证的网站获取图片的直接 URL:

.. code:: bash

gallery-dl -g -u "<用户名>" -p "<密码>" "https://twitter.com/i/web/status/604341487988576256"

按章节号和语言过滤漫画章节:

.. code:: bash

gallery-dl --chapter-filter "10 <= chapter < 20" -o "lang=fr" "https://mangadex.org/title/59793dd0-a2d8-41a2-9758-8197287a8539"

| 在远程资源中搜索 URL 并从中下载图片: | (找不到提取器的 URL 将被静默忽略)

.. code:: bash

gallery-dl "r:https://pastebin.com/raw/FLwrCYsT"

如果网站的地址对其提取器来说是非标准的,您可以在 URL 前加上提取器的名称,以强制使用特定的提取器:

.. code:: bash

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 在以下位置搜索配置文件:

Windows: * %APPDATA%\gallery-dl\config.json * %USERPROFILE%\gallery-dl\config.json * %USERPROFILE%\gallery-dl.conf

(``%USERPROFILE%`` 通常指用户的主目录,
即 ``C:\Users\<用户名>\``)

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, inkbunny, mangadex, mangoxo, pillowfort, sankaku, subscribestar, tapas, tsumino, twitter, 和 zerochan 是可选的。

您可以在配置文件<配置_>__中设置必要的信息

.. code:: json

{
    "extractor": {
        "twitter": {
            "username": "<用户名>",
            "password": "<密码>"
        }
    }
}

或者您可以直接通过 :code:-u/--username 和 :code:-p/--password 或 :code:-o/--option 命令行选项提供它们

.. code:: bash

gallery-dl -u "<用户名>" -p "<密码>" "URL"
gallery-dl -o "username=<用户名>" -o "password=<密码>" "URL"

Cookies

对于由于 CAPTCHA 或类似原因而无法使用用户名和密码登录,或尚未实现登录功能的网站,您可以使用浏览器登录会话的 cookies 并将其输入到 gallery-dl 中。 这可以通过在配置文件中使用 cookies <https://gdl-org.github.io/docs/configuration.html#extractor-cookies>__ 选项来实现,具体方法如下:

  • 指定由浏览器插件导出的 Mozilla/Netscape 格式的 cookies.txt 文件路径 (例如 Chrome 浏览器的 Get cookies.txt LOCALLY <https://chrome.google.com/webstore/detail/get-cookiestxt-locally/cclelndahbckbenkjhflpdbgdldlbecc>, Firefox 浏览器的 Export Cookies <https://addons.mozilla.org/en-US/firefox/addon/export-cookies-txt/>)

  • 从浏览器的开发者工具中收集的名称-值对列表 (在 Chrome <https://developers.google.com/web/tools/chrome-devtools/storage/cookies>__ 中, 在 Firefox <https://developer.mozilla.org/en-US/docs/Tools/Storage_Inspector>__ 中)

  • 指定要提取 cookies 的浏览器名称 (支持基于 Chromium 的浏览器、Firefox 和 Safari)

例如:

.. code:: json

{
    "extractor": {
        "instagram": {
            "cookies": "$HOME/path/to/cookies.txt"
        },
        "patreon": {
            "cookies": {
                "session_id": "K1T57EKu19TR49C51CDjOJoXNQLF7VbdVOiBrC9ye0a"
            }
        },
        "twitter": {
            "cookies": ["firefox"]
        }
    }
}

你也可以使用 :code:--cookies 命令行选项指定 cookies.txt 文件, 或使用 :code:--cookies-from-browser 指定从哪个浏览器提取 cookies:

.. code:: bash

gallery-dl --cookies "$HOME/path/to/cookies.txt" "URL"
gallery-dl --cookies-from-browser firefox "URL"

OAuth

gallery-dl 支持某些提取器通过 OAuth_ 进行用户身份验证。 这对于 pixiv 是必需的, 对于 deviantartflickrredditsmugmugtumblrmastodon 实例是可选的。

将你的账户链接到 gallery-dl 授予它代表你的账户发出请求的能力, 使其能够访问公共用户无法获取的资源。

要进行链接,首先使用 oauth:<网站名称> 作为参数启动它。 例如:

.. code:: bash

gallery-dl oauth:flickr

你将被引导到网站的授权页面,并被要求授予 gallery-dl 读取权限。 授权后,你将看到一个或多个"令牌",应将其添加到你的配置文件中。

要与 mastodon 实例进行身份验证,请使用 oauth:mastodon:<实例> 作为参数运行 gallery-dl。 例如:

.. code:: bash

gallery-dl oauth:mastodon:pawoo.net
gallery-dl oauth:mastodon:https://mastodon.social/
项目侧边栏1项目侧边栏2
推荐项目
Project Cover

豆包MarsCode

豆包 MarsCode 是一款革命性的编程助手,通过AI技术提供代码补全、单测生成、代码解释和智能问答等功能,支持100+编程语言,与主流编辑器无缝集成,显著提升开发效率和代码质量。

Project Cover

AI写歌

Suno AI是一个革命性的AI音乐创作平台,能在短短30秒内帮助用户创作出一首完整的歌曲。无论是寻找创作灵感还是需要快速制作音乐,Suno AI都是音乐爱好者和专业人士的理想选择。

Project Cover

有言AI

有言平台提供一站式AIGC视频创作解决方案,通过智能技术简化视频制作流程。无论是企业宣传还是个人分享,有言都能帮助用户快速、轻松地制作出专业级别的视频内容。

Project Cover

Kimi

Kimi AI助手提供多语言对话支持,能够阅读和理解用户上传的文件内容,解析网页信息,并结合搜索结果为用户提供详尽的答案。无论是日常咨询还是专业问题,Kimi都能以友好、专业的方式提供帮助。

Project Cover

阿里绘蛙

绘蛙是阿里巴巴集团推出的革命性AI电商营销平台。利用尖端人工智能技术,为商家提供一键生成商品图和营销文案的服务,显著提升内容创作效率和营销效果。适用于淘宝、天猫等电商平台,让商品第一时间被种草。

Project Cover

吐司

探索Tensor.Art平台的独特AI模型,免费访问各种图像生成与AI训练工具,从Stable Diffusion等基础模型开始,轻松实现创新图像生成。体验前沿的AI技术,推动个人和企业的创新发展。

Project Cover

SubCat字幕猫

SubCat字幕猫APP是一款创新的视频播放器,它将改变您观看视频的方式!SubCat结合了先进的人工智能技术,为您提供即时视频字幕翻译,无论是本地视频还是网络流媒体,让您轻松享受各种语言的内容。

Project Cover

美间AI

美间AI创意设计平台,利用前沿AI技术,为设计师和营销人员提供一站式设计解决方案。从智能海报到3D效果图,再到文案生成,美间让创意设计更简单、更高效。

Project Cover

AIWritePaper论文写作

AIWritePaper论文写作是一站式AI论文写作辅助工具,简化了选题、文献检索至论文撰写的整个过程。通过简单设定,平台可快速生成高质量论文大纲和全文,配合图表、参考文献等一应俱全,同时提供开题报告和答辩PPT等增值服务,保障数据安全,有效提升写作效率和论文质量。

投诉举报邮箱: service@vectorlightyear.com
@2024 懂AI·鲁ICP备2024100362号-6·鲁公网安备37021002001498号