A CLI tool for downloading content from www.pixiv.net.

mio 1680363974 Fix crash when downloading Ugoira 1 settimana fa
build-aux 895ae76293 Convert Ruby 'configure' to Autotools 3 mesi fa
docs dfc05f23bb Add scons build script 3 settimane fa
source 1680363974 Fix crash when downloading Ugoira 1 settimana fa
.editorconfig 8b445b92a2 update .editorconfig 7 mesi fa
.gitignore dfc05f23bb Add scons build script 3 settimane fa
AUTHORS 895ae76293 Convert Ruby 'configure' to Autotools 3 mesi fa
COPYING 5437197a76 Initial commit 1 anno fa
ChangeLog 1680363974 Fix crash when downloading Ugoira 1 settimana fa
HowTo-PHPSESSID.txt eb34e2dc10 Add PHPSESSID HowTo 9 mesi fa
INSTALL 0a23fbe6e2 Mention macOS build limitation in INSTALL 3 settimane fa
Makefile.am 7a214458ce Include meson files with autoconf dist 1 mese fa
NEWS 621ec7d4f9 v2024.10 3 settimane fa
README.md a7f1a4df9a Support building on macOS/SCons/DMD 3 settimane fa
SConstruct 621ec7d4f9 v2024.10 3 settimane fa
bootstrap 895ae76293 Convert Ruby 'configure' to Autotools 3 mesi fa
configure.ac 621ec7d4f9 v2024.10 3 settimane fa
dub.sdl b7d3e18ee0 Add update_git_version.d to replace dub.sdl script 3 settimane fa
dub.selections.json 5a72eb8b2e Remove magickd from dub.selections.json 3 mesi fa
guix.scm b78a891d6a Configure guix.scm to use meson build system 1 mese fa
meson.build 621ec7d4f9 v2024.10 3 settimane fa
update_git_version.d 457f196962 Fix typo in update_git_version 3 settimane fa

README.md

pixiv_down

A CLI tool for downloading content from pixiv.

Requirements

D >= 2.076.0 : https://dlang.org

GraphicsMagick >= 1.3.0 : http://www.graphicsmagick.org (only for non-macOS POSIX)

You will also need either Meson, SCons, or dub.

pixiv_down is only tested on Linux and macOS.

Build

[!NOTE] Building on macOS requires DMD as there is an issue with LDC's Objective-C implementation.

It is possible to build pixiv_down using dub by running dub build.

If you do not have dub, or simply don't want to use it, the SCons build system can be used:

scons

The compiled executable can be found at source/pixiv_down.

You can install the executable by running the following as root:

scons install

For more information, see the INSTALL file.

Usage

An expanded version of the help message. Some options may be omitted, please run pixiv_down help <command> for more information on any of the commands.

Usage: pixiv_down <command> <arguments> [options]

Commands:
  artist [-t|--type TYPE] <id> [<id2>, <id3>, ...]

      Download all content of TYPE from the provided account ID(s).
      TYPE can be either manga, illust, or novel, depending on what
      you want to download.

  artwork [--group-errors] <id> [<id2>, <id3>, ...]

      Download an artwork (or manga) with ID <id>.  You can download
      multiple items by passing multiple IDs separated by a space.

      The --group-errors option will change the behaviour such that
      instead of printing any errors after each ID, all errors will
      be printed after attempting to download the last ID.

  bookmarked [--novels] [--private] [--remove-invalid]
             [-s|--skip OFFSET]

      Download all of your bookmarked works.  By default, this will download
      all of the illustrations, manga, and ugoira on your 'public' bookmark
      list.  You can pass the --novels flag to download the novels instead.
      Using the --private flag will cause pixiv_down to download from your
      'private' bookmark list.

      After running this command, a list of IDs will be written to a file
      called 'pixiv_down-missing.txt'.  These IDs represent the works that
      are no longer available on pixiv.  You can pass the --remove-invalid
      flag and pixiv_down will remove these works from your bookmark list.

  compact [-i|--interactive] [-n|--dry-run]

      Go through all the accounts you have downloaded and remove
      duplicated content.  When downloading, pixiv_down creates
      a directory using the current account's display name, which
      can change.  The compact command will move any content from
      the old directories (previous display names) in to the
      directory using the current display name, so long as the
      content is not already present.

      The --interactive option will allow you to choose which
      directory name to use.  The --dry-run option will print
      out the actions that would take place, without actually
      performing the actions.

  daily [-e|--end END] [-b|--begin BEGIN] [-s|--sfw-only]

      Download the latest content from all the accounts you follow.
      The END option specifies the date to stop downloading at. The
      default behaviour is to download everything from the time of
      execution until END. You can optionally specify BEGIN to change
      the date pixiv_down begins downloading from. Both BEGIN and
      END expect a date in the format YYYY-MM-DD.

      An END date will be determined automatically if you have
      previously called 'daily'.  It will use the BEGIN of the
      previous run, regardless of if a manual date was provided
      or not.

      The --sfw-only option restricts the content that is downloaded
      to that which is not marked as R-18.

  following <--public|--private> [-s|--skip NUMBER]

      Download all content from the accounts you follow, in order of
      most recently followed. You must specify whether to download
      from accounts you publically follow (--public) or the accounts
      you follow in private (--private).

      If you know that you have already downloaded the first 3
      accounts, you can use the --skip option (--skip 3) which
      will cause pixiv_down to skip over the first 3 accounts.

  novel [--group-errors] <id> [<id2> <id3> ...]

      Download the novel with ID <id>.  You can download multiple
      items by passing multiple IDs separated by a space.

      The --group-errors option will change the behaviour such that
      instead of printing any errors after each ID, all errors will
      be printed after attempting to download the last ID.

  prune [-n|--dry-run] [-q|--quiet]

      Go through all the accounts you have downloaded and remove
      directories for accounts that you no longer follow, or no
      longer exist (i.e. the account has been deleted).

      You will be prompted to remove an account's directories unless
      the --quiet option is used, in which case the directories will
      be removed automatically.

      Passing the --dry-run option will still prompt to remove
      the directories, however, it will not actually remove them.

Notice

pixiv_down does not allow you to download items which you should not be allowed to. By this I mean, if there is something on pixiv that you must pay for in order to access, then pixiv_down won't allow you to download it unless you have paid for it. I'm not aware of anything on pixiv that requires payment, but just a heads up.

It should go without saying, but this is an unofficial program and any usage may result in your account being suspended or terminated.

License

pixiv_down is licensed under the terms of the GNU General Public License, version 3. You can find a copy in the COPYING file, or online at https://www.gnu.org/licenses/gpl-3.0.html.