17 stable releases

1.5.0 Aug 30, 2023
1.4.4 Jul 24, 2023
1.4.3 Apr 30, 2023
1.4.2 Oct 30, 2022
1.0.1 Jul 28, 2020

#26 in HTTP client

Download history 1/week @ 2023-06-11 37/week @ 2023-06-18 2/week @ 2023-06-25 11/week @ 2023-07-02 2/week @ 2023-07-09 3/week @ 2023-07-16 27/week @ 2023-07-23 10/week @ 2023-07-30 5/week @ 2023-08-06 18/week @ 2023-08-13 166/week @ 2023-08-20 165/week @ 2023-08-27 26/week @ 2023-09-03 6/week @ 2023-09-10 7/week @ 2023-09-17

238 downloads per month

GPL-3.0+

200KB
1.5K SLoC

Anime-dl

Crates.io dependency status Crates.io

Efficient cli app for downloading anime

Install

For latest release:

cargo install anime-dl

or for latest commit on main branch:

cargo install --git https://github.com/gabelluardo/anime-dl

Usage

I usually use this:

adl -D <entries>

to store every anime in a properly named directory.

Or for stream after scraped an archive:

adl -sS <archive> <entries>

asciicast

Usage: adl [OPTIONS] [ENTRIES]...

Arguments:
  [ENTRIES]...  Source urls or scraper's queries

Options:
  -d, --dir <DIR>                Root path where store files [default: .]
  -m, --max-concurrent <MAX>     Maximum number of simultaneous downloads allowed [default: 24]
  -r, --range <RANGE>            Episodes to download (es. `1-4` or `1,2,3,4`) [default: 1]
  -S, --site <SITE>              Search anime in remote archive [possible values: aw]
  -D, --default-dir              Save files in a folder with a default name
  -f, --force                    Override existent files
  -a, --anilist-id <ANILIST_ID>  Override app id environment variable [env: ANIMEDL_ID]
  -s, --stream                   Stream episode in a media player
  -i, --interactive              Interactive mode
  -p, --no-proxy                 Disable automatic proxy (useful for slow connections)
      --clean                    Delete app cache
  -h, --help                     Print help
  -V, --version                  Print version

For parsing urls from a file (es. urls):

adl [FLAGS] [OPTIONS] $(cat urls)

⚠️ Streaming requires mpv or vlc ⚠️

adl -s <entries>

Anilist

For Anilist integration create an enviroment variable ANIMEDL_ID with the ID of your developer api client, or use the default of the app: 4047

Contribution

Currently, there is only an italian language scraper, contribution for support other languages are welcome (see #83).

License

Made with 🫶 by @gabelluardo in GPLv3

Dependencies

~16–33MB
~532K SLoC