1
0
Files
anime-rss/README.md
2021-01-20 23:25:24 +01:00

3.2 KiB

anime-rss

Download anime via RSS and Transmission

Repository avater is Umaru Doma from Himouto! Umaru-chan

Prerequisites

Transmission needs to be installed, running, configured and accessible from the host running anime-rss. Further transmission-remote needs to be on the path.

In the Transmission config file ~/.config/transmission-daemon/settings.json check the rpc- properties, as anime-rss uses transmission-remote which sends the torrent URLs to Transmission via RPC.

Also requires at least Python 3.9.

Install

Install dependencies

pip install feedparser

Clone repo

git clone ...

Config

Adjust config.json
  • animeDownloadDir - base path where downloaded anime should be stored. Without trailing slash. Passed as download directory to transmission (-w)
  • dirPerAnime - whether to create one directory per anime. Created automatically as sub folder of animeDownloadDir by replacing spaces in the anime name with underscores
Adjust animes.json
  • Add a Feed - it has to have an ID that's used in output. Freetext
  • Add the RSS URL to the feed, e.g. https://subsplease.org/rss/?t&r=1080 for the RSS feed of the 1080p releases of the SubsPlease group
  • Add an anime - Title should be the same as in the feed content
  • Local is the starting episode number, e.g. 00 for brand new series, or 25 for e.g the second season of an anime that continues with the numbering, where the first season had 24 episodes. Left padded with zeros to at least two digits
  • Add the weekday the anime airs via the Airing element. Setting this to Done will check the feed URL content in reverse order, which is handy if a feed contains all episodes of a finished anime
  • Provide an Episode-Regex to parse the episode number from the title of an RSS entry. As this regex is used for all elements of a feed it should match all those. Use the $SHOW$ placeholder in the regex for substitution with the actual anime name during feed parsing.

Running and example output

[MK13@brutebox ~]$ python path/to/anime-rss.py path/to/config.json path/to/animes.json
Checking feed: SubsPlease
Checking anime: Go-toubun no Hanayome S2 - Airing every Thursday 02/x
Checking anime: Jaku-Chara Tomozaki-kun - Airing every Friday 02/x
Checking anime: Mushoku Tensei - Airing every Sunday 01/x
NEW NEW NEW Mushoku Tensei 02
localhost:9091/transmission/rpc/ responded: "success"
Checking anime: Ore dake Haireru Kakushi Dungeon - Airing every Friday 02/x
Checking anime: Tensei Shitara Slime Datta Ken - Airing every Tuesday 25/x
Checking anime: Wonder Egg Priority - Airing every Tuesday 01/x
Checking feed: Nyaa Kaifuku Jutsushi no Yarinaoshi
Checking anime: Kaifuku Jutsushi no Yarinaoshi - Airing every Wednesday 01/x
Checking feed: Nyaa Shingeki no Kyojin
Checking anime: Shingeki no Kyojin - Airing every Sunday 64/x
NEW NEW NEW Shingeki no Kyojin 65
localhost:9091/transmission/rpc/ responded: "success"

Both parameters are optional, if not given they are searched in the current working directory.

anime-rss also outputs colored and formatted text via ANSI escape sequences if supported.