Skip to content

RicterZ/doujinshi-dl

Repository files navigation

doujinshi-dl

あなたも変態。 いいね?

pypi version license

doujinshi-dl is a CLI tool for downloading doujinshi from mirror sites.

Manual Installation

From Github:

git clone https://github.com/RicterZ/doujinshi-dl
cd doujinshi-dl
pip install --no-cache-dir .

Build Docker container:

git clone https://github.com/RicterZ/doujinshi-dl
cd doujinshi-dl
docker build -t doujinshi-dl:latest .
docker run --rm -it -v ~/Downloads/doujinshi:/output doujinshi-dl --id 123855

Installation

From PyPI with pip:

pip install doujinshi-dl

Install a plugin to connect to a mirror site:

pip install doujinshi-dl-<plugin-name>

For a self-contained installation, use pipx:

pipx install doujinshi-dl

Usage

⚠️IMPORTANT⚠️: Authentication is required. Get your API token from your account settings page and save it:

doujinshi-dl --token "YOUR_API_TOKEN"

The default download folder will be the path where you run the command (%cd% or $PWD).

Download specified doujinshi:

doujinshi-dl --id 123855 123866 123877

Download doujinshi with ids specified in a file (doujinshi ids split by line):

doujinshi-dl --file=doujinshi.txt

Set search default language:

doujinshi-dl --language=english

Search a keyword and download the first page:

doujinshi-dl --search="tomori" --page=1 --download
# you also can download by tags and multiple keywords
doujinshi-dl --search="tag:lolicon, artist:henreader, tag:full color"
doujinshi-dl --search="lolicon, henreader, full color"

Download your favorites with delay:

doujinshi-dl --favorites --download --delay 1 --page 3-5,7

Format output doujinshi folder name:

doujinshi-dl --id 261100 --format '[%i]%s'
# for Windows
doujinshi-dl --id 261100 --format "[%%i]%%s"

Supported doujinshi folder formatter:

  • %i: Doujinshi id
  • %f: Doujinshi favorite count
  • %t: Doujinshi name
  • %s: Doujinshi subtitle (translated name)
  • %a: Doujinshi authors' name
  • %g: Doujinshi groups name
  • %p: Doujinshi pretty name
  • %ag: Doujinshi authors name or groups name

Note: for Windows operation system, please use double "%", such as "%%i".

Other options:

Usage:
  doujinshi-dl --search [keyword] --download
  DOUJINSHI_DL_URL=https://mirror-url/ doujinshi-dl --id [ID ...]
  doujinshi-dl --file [filename]

Environment Variable:
  DOUJINSHI_DL_URL        mirror url

Options:
  -h, --help            show this help message and exit
  --download, -D        download doujinshi (for search results)
  --no-download         skip downloading (for search results)
  --show, -S            just show the doujinshi information
  --id ID [ID ...]      doujinshi ids set, e.g. 167680 167681 167682
  --search, -s KEYWORD  search doujinshi by keyword
  --favorites, -F       list or download your favorites
  --artist, -a ARTIST   list doujinshi by artist name
  --page-all            all search results
  --page, --page-range PAGE
                        page number of search results. e.g. 1,2-5,14
  --sorting, --sort {recent,popular,popular-today,popular-week,date}
                        sorting of doujinshi (recent / popular / popular-[today|week])
  --output, -o OUTPUT_DIR
                        output dir
  --threads, -t THREADS
                        thread count for downloading doujinshi
  --timeout, -T TIMEOUT
                        timeout for downloading doujinshi
  --delay, -d DELAY     slow down between downloading every doujinshi
  --retry RETRY         retry times when downloading failed
  --exit-on-fail        exit on fail to prevent generating incomplete files
  --proxy PROXY         store a proxy, for example: -p "http://127.0.0.1:1080"
  --file, -f FILE       read gallery IDs from file.
  --format NAME_FORMAT  format the saved folder name
  --no-filename-padding
                        no padding in the images filename, such as '001.jpg'
  --html [HTML_VIEWER]  generate an HTML viewer in the specified directory, or
                        scan all subfolders within the entire directory to
                        generate the HTML viewer. By default, current working
                        directory is used.
  --no-html             don't generate HTML after downloading
  --gen-main            generate a main viewer contain all the doujin in the folder
  --cbz, -C             generate Comic Book CBZ File
  --pdf, -P             generate PDF file
  --meta                generate a metadata file in doujinshi format
  --update-meta         update the metadata file of a doujinshi, update CBZ
                        metadata if exists
  --rm-origin-dir       remove downloaded doujinshi dir when generated CBZ or PDF file
  --move-to-folder      remove files in doujinshi dir then move new file to
                        folder when generated CBZ or PDF file
  --regenerate          regenerate the cbz or pdf file if exists
  --zip                 package into a single zip file
  --token TOKEN         set API token for authentication
  --language LANGUAGE   set default language to parse doujinshis
  --clean-language      set DEFAULT as language to parse doujinshis
  --save-download-history
                        save downloaded doujinshis, whose will be skipped if
                        you re-download them
  --clean-download-history
                        clean download history
  --template VIEWER_TEMPLATE
                        set viewer template

Mirror

To use a mirror, set the DOUJINSHI_DL_URL environment variable to your mirror's base URL.

DOUJINSHI_DL_URL=https://your-mirror.example.com doujinshi-dl --id 123456

About

Doujinshi downloader framework

Topics

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors