/anime-downloader

A simple but powerful anime downloader and streamer.

Primary LanguagePythonThe UnlicenseUnlicense


A simple yet powerful tool for downloading anime.


Anime Downloader

Ever dreamt about watching anime for free effortlessly without all those unbearable ads? Ever dreamt of downloading your favourite anime for that long trip?

kawaii

Yeah. Me too! That's why this tool exists.

Features

  • Download or stream any episode or episode range of any anime.
  • Have a locally stored anime list to track your progress and stream anime using the watch command.
  • Import your MAL anime list to the local anime list.
  • Specify the quality you want to stream or download.
  • Search and download.
  • Save yourselves from those malicious ads.
  • Download using external downloader (aria2 recommended).
  • Configurable using config.json. See documentation.

Supported Operating Systems:

  • Windows
  • Mac OS
  • Linux
  • Android
  • iOS (requires Jailbreak and some tinkering)

Supported Sites

Details about the sites can be found in FAQ

  • 4Anime
  • AnimeBinge
  • Animedaisuki
  • Animeflix
  • Animeflv
  • Animefreak
  • AnimeKisa
  • AnimeOnline360
  • animeout
  • Animerush
  • Animesimple
  • Animevibe
  • AnimeTake
  • AniTube
  • Animixplay
  • Anistream
  • Darkanime
  • Dbanimes
  • EraiRaws
  • EgyAnime - usually m3u8 (good for streaming, not so much for downloading)
  • FastAni
  • GurminderBoparai (AnimeChameleon)
  • itsaturday
  • Justdubs
  • Kickassanime
  • Kissanimefree
  • KissanimeX
  • Kisscartoon - requires Selenium
  • Nyaa.si
  • PutLockers
  • RyuAnime
  • SubsPlease
  • twist.moe - requires Node.js
  • tenshi.moe
  • Vidstream
  • Voiranime
  • Vostfree

Sites that require Selenium DO NOT and WILL NOT work on mobile operating systems

Twist.moe DOES NOT work and WILL NOT work on iOS, a specific Python module that is required for twist.moe is not supported on iOS and cannot be installed.

Installation

Installation instructions*

If you have trouble installing, see extended installation instructions here or join the discord server for help.

Note:

  • For Cloudflare scraping either cfscrape or selenium is used. Cfscrape depends on node-js and selenium utilizes an automated invisible instance of a browser (chrome/firefox). So, if you want to use Cloudflare enabled sites, make sure you have node-js and a webdriver installed.
  • You might have to use pip3 depending on your system
  • To install this project with gui and all its dependencies, add #egg=anime-downloader[gui] to the pip command you are using to install it. Example: pip install -U git+https://github.com/anime-dl/anime-downloader#egg=anime_downloader[gui]
  • To install this project with selescrape (if you are using GUI, ignore this line), do the same as above - but with #egg=anime-downloader[selescrape]

Usage

See docs.

Anime Downloader has six (6) sub-commands, dl, watch, gui, config, ezdl and test.

  • dl: dl can download anime.
  • ezdl: Uses metadata agents to unify providers and also auto select a result if the search argument is close to the anime title.
  • watch: watch can manage your anime watch list. Needs mpv.
  • config: can manage the configuration for anime dl.
  • test: Tests all the providers, not the most reliable command as the results may be faulty.
  • gui: opens a PyQT gui that allows for non commandline downloading and streaming.

To use anime_downloader in your package:

This tool can be used as a library. This means you can import it into your own applications and search for anime and do many other wonderful things. See documentation.

Development Instructions:

See development instructions.

Related Projects

  • adl - a command-line tool for watching anime that makes use of anime-downloader.
  • Cloudstream - mobile gui for pirating anime and movies.

Please bear in mind the production of this repo is for educational/research purposes only with regards to webscraping for videos, we take no responsibility for people who decide to actually use this repository.