This downloader can download anime from different sites. Currently supported are Crunchyroll, Hidive, AnimeOnegai, and AnimationDigitalNetwork.
This application is not endorsed by or affiliated with Crunchyroll, Hidive, AnimeOnegai, or AnimationDigitalNetwork. This application enables you to download videos for offline viewing which may be forbidden by law in your country. The usage of this application may also cause a violation of the Terms of Service between you and the stream provider. This tool is not responsible for your actions; please make an informed decision before using this application.
By default this application uses the following paths to programs (main executables):
ffmpeg.exe
(From PATH)ffprobe.exe
(From PATH)mkvmerge.exe
(From PATH)mp4decrypt.exe
(From PATH)To change these paths you need to edit bin-path.yml
in ./config/
directory.
See the documentation for a complete list of what options are available. You can define defaults for the commands by editing the cli-defaults.yml
file in the ./config/
directory.
Most services require you to be logged in, in order to download from, an example of how you would login is:
AniDL --service {ServiceName} --auth
In order to find the IDs to download, you can search from each service by using the --search
flag like this:
AniDL --service {ServiceName} --search {SearchTerm}
Once you have the ID which you can obtain from using the search or other means, you are ready to download, which you can do like this:
AniDL --service {ServiceName} -s {SeasonID} -e {EpisodeNumber}
Dependencies that are only required for running from code. These are not required if you are using the prebuilt binaries.
Please note that NodeJS, NPM, and PNPM must be installed on your system. For instructions on how to install pnpm, check (https://pnpm.io/installation)
First clone this repo git clone https://github.com/anidl/multi-downloader-nx.git
.
cd
into the cloned directory and run pnpm i
. Next, decide if you want to package the application, build the code, or run from typescript.
You can run the code from native TypeScript, this requires ts-node which you can install with pnpm with the following command: pnpm -g i ts-node
Afterwords, you can run the application like this:
ts-node -T ./index.ts --help
If you want to build the application into JavaScript code to run, you can do that as well like this:
pnpm run prebuild-cli
pnpm run prebuild-gui
Then you can cd into the lib
folder and you will be able to run the CLI or GUI as follows:
node ./index.js --help
node ./gui.js
If you want to package the application, run pnpm run build-{platform}
-{type}
where {platform}
is the operating system (currently the choices are windows, linux, macos, alpine, android, and arm) and {type}
is cli or gui.
In order to decrypt DRM content, you will need to have a dumped CDM, after that you will need to place the CDM files (device_client_id_blob
and device_private_key
) into the ./widevine/
directory. For legal reasons we do not include the CDM with the software, and you will have to source one yourself.