reactor-crw v0.1.0
Добрейший вечерочек. Новая версия reactor-crw и в ней уже используется graphql API реактора. Тот самый, на который, с недавних пор, переехала мобильная версия сайта. Ссылка на API.
Выглядит это следующим образом:
На данный момент reactor-crw поддерживает два парсера, HTML и API. Оба доступны в виде подкоманд:
- ./reactor-crw html -p "http://joyreactor.cc/tag/Photo+art" - HTML версия
- ./reactor-crw api -t "Photo Art" - API версия
- ./reactor-crw html -p "http://joyreactor.cc/tag/Photo+art" - HTML версия
- ./reactor-crw api -t "Photo Art" - API версия
Ограничения
Внимательный читатель заметил, что этап получения ссылок происходит дольше самого скачивания файлов. Хотя по идее мы ничего не парсим а сразу получаем нужный результат. Так происходит потому что у реактора довольно жесткие лимиты по запросам на API. Собственно, у меня получилось заблочить себя даже в плейграунде.
Таким образом, каждый новый запрос на API происходит с таймаутом в 2 секунды.
Что позволяет API парсер
На данный момент, только пакетное выкачивание тегов. По умолчания API отдает абсолютно все, что связано с тегом, поэтому, была добавлена поддержка заблокированных тегов и подписок пользователя.
./reactor-crw api -t "Photo Art" -с "строка с куками"
Это уберет из результата все что у вас заблокировано. Но так же отфильтрует контент, на который нужно явно подписаться, что бы видеть. Куки нужно брать мобильной версии сайта.
Изменения в версии 0.0.2
- Была добавлена поддержка socks5 и прокси (работает для HTML и API). Пример:
./reactor-crw api -t "tag name" --socks5 "socks5://127.0.0.1:9050"
./reactor-crw api -t "tag name" --socks5 "socks5://127.0.0.1:9050"
- Значительно повысилась скорость обработки файлов. Теги, которые качались по 10-12 минут, сейчас тащатся за 2-3.
Скачать последнюю версию здесь. Если обнаружили ошибку или есть идея для нового функционала - создайте issue.
p.s. да, мы все знаем про Kelly.