Skip to content

Repository files navigation

pixiv-bulk-downloader

PyPI CI

ghcr size

Pixiv Bulk Downloader for bookmarks and works of following authors.

Installation

# mise via github release
mise use -g github:eggplants/pixiv-bulk-downloader

# mise via pipx
mise use -g pipx:pixiv-bulk-downloader

# pipx
pipx install pixiv-bulk-downloader

# pip
pip install pixiv-bulk-downloader

Docker

docker pull ghcr.io/eggplants/pixiv-bulk-downloader

# the image has no browser, so log in by pasting the code back
docker run --rm -it -v ~/pbd:/root/pbd -v ~/.config/gppt:/root/.config/gppt \
  ghcr.io/eggplants/pixiv-bulk-downloader --oauth bookmarked

Setup

Logging in is delegated to gppt, which owns the credentials and the token cache under ~/.config/gppt/.

# store an account: pixiv ID + password (e2e), or nothing at all (oauth)
gppt configure

CLI

$ pbd login          # or: pbd l
[+] Opening browser for pixiv login ...
[+] Logged in as: eggplant (@eggplants)

$ pbd following      # or: pbd f -- works of every artist you follow
$ pbd bookmarked     # or: pbd b -- everything you have bookmarked

Downloads land in $SAVE_DIR (default ~/pbd), or wherever -o/--save-dir says:

  • <save dir>/following/<id>_<name>_<account>/ -- one directory per artist
  • <save dir>/bookmarks/ -- every bookmarked work

Files already on disk are skipped, so an interrupted run can just be started again.

Library

from pixiv_bulk_downloader import PixivBookmarksDownloader, login
from pathlib import Path

client = login()
PixivBookmarksDownloader(client, Path.home() / "pbd").download_all()

License

MIT License

About

Pixiv Bulk Downloader

Topics

Resources

Stars

24 stars

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages