2018-03-02
TL;DR. Для тек кто спешит:
https://lostproxy.vaultvulp.tk/rss.xml
Несколько лет назад команда, работающая над порталом LostFilm.TV, решила выпустить радикально переработанную версию ресурса. Практически каждый элемент подвергся изменениям, не осталась без внимания и RSS-лента. Она стала читаемой и удобной, но к сожалению перестала удовлетворять требованиям Torrent-клиентов.
К счастью для меня, ребята оставили старый интерфейс доступным по адресу https://old.lostfilm.tv/. Там же обитает и "старая" RSS-лента:
https://old.lostfilm.tv/rssdd.xml
Я уже понадеялся, что все беды позади, но увы - все ссылки в ленте ведут на новый домен, например:
https://www.lostfilm.tv/download.php?id=12345&Gotham.S04E13.720p.WEB.rus.LostFilm.TV.mp4.torrent
Но по этому адресу нет ни torrent-файла, ни какой-то другой страницы. (Удивительно, что Веб-сервер возвращает HTTP статус 200, вместо более подходящего 404)
Я смекнул, что ссылка должна вести на старую версию портала, и, после замены www
на old
, я получил валидную ссылку на раздачу:
https://old.lostfilm.tv/download.php?id=12345Gotham.S04E13.720p.WEB.rus.LostFilm.TV.mp4.torrent
Наметился проект на вечер выходного дня - автоматизировать процесс "исправления" URL.
Требования были очевидными:
Взяв в руки Docker, Python, Caddy, я взялся за дело.
Весь код проекта доступен на Github. Там же присутствует инструкция по запуску проекта.
Ниже я кратко опишу основные элементы проекта.
Код утилиты я старался написать максимально читаемым, отмечу лишь один момент: оригинальная RSS-лента использует кодировку cp1251
, которая поддерживается далеко не всеми Torrent-клиентами, по этому я меняю её на более распространенную UTF-8
.
Caddyfile
тоже достаточно простой:
Важно! Перед запуском проекта необходимо отредактировать этот файл и указать правильный домен или ip адрес, доступный извне.
В docker-compose.yml
мы создаём volume webroot
, и монитруем его в оба контейнера.
Если у вас возникли какие-то вопросы, замечания или предложения - милости прошу в комментарии.
В этой статье можно прочитать о том, как настраивается torrent-клиент, авторизация, и загрузка новых серий сериалов.