elizaroveugene / torrentmonitor Goto Github PK
View Code? Open in Web Editor NEWTorrentMonitor php engine
TorrentMonitor php engine
На Synology файл engine.php вылетает с ошибкой: PHP Fatal error: Class 'PDO' not found in /volume1/web/tormon/class/Database.class.php on line 20
PDO установлен и включен, работает для других скриптов. Веб-интерфейс тулы тоже работает.
public static function checkCurl()
{
if (in_array("curl", get_loaded_extensions()))
return TRUE;
else
return FALSE;
}
public static function checkCurl()
{
return function_exists('curl_init');
}
Сложилось так, что в ночь с 6 на 7 ноября blog.korphome.ru из моей подсети был недоступен. При попытке зайти на http://blog.korphome.ru/torrentmonitor/ браузер по таймауту выдает, что не может установить соединение.
Во время недоступности блога web интерфейс ТМ не открывается - долгое ожидание ответа по http от машины с установленным ТМ и далее по таймауту чистое окно браузера (Firefox 24.0, Opera 17.0).
В /var/log/apache2/error.log при каждой попытке обновления страницы TM сыпется
[Thu Nov 07 01:00:29 2013] [error] [client 192.168.1.33] PHP Fatal error: Class 'Errors' not found in /var/www/htdocs/tmp/to
rrentmonitor/class/System.class.php on line 83, referer: http://192.168.1.39/index_local.html
Строки 72-84 в /torrentmonitor/class/System.class.php - проверка обновления ТМ с блога.
Привет,
LostFilm начали делать 1080p релизы, пример: http://www.lostfilm.tv/browse.php?cat=205
Установлена последняя версия (0.7.6). Комит от 28 апреля, последний доступный в этом репозитории. В интерфейсе появилось сообщение о выходе новой версии. На сайте тоже есть сообщение о версии 0.7.7 от 5 мая.
Видимо забыл запушить изменения в этот репозиторий.
В RSS есть:
Декстер (Dexter) / Сезон 7, эпизод 10 "The Dark...Whatever" / HDTV / 720p / AC3, RUS, ENG / NovaFiLM.TV
В мониторе нет, "последнее обновление" пустое.
Как насчет реализации паузы для обновлений определенного торрента?
Смысл в том, что периодически на lostfilm, после окончания сезона, отдается еще один торрент с таким-же названием и всеми сериями сезона.
Обновлял как написано, база (mysql), апдейт в базу накатил.
Ошибок нет.
Если путь до директории с торрентами указать без финального слеша, то полный путь до торрент файла будет склеен некорректно.
Например если путь /var/torrent/upload и имя файла torrent.torrent, то полный путь будет /var/torrent/uploadtorrent.torrent.
Надо бы проверять есть ли финальный слеш в пути и добавлять его если нет.
https://www.dropbox.com/s/d3m95fj13iquq8z/tor.png
Версия 0.7.2
Собственно регистрация на rutor.org и не требуется, но при попытке добавить оттуда тему для отслеживания torrentmonitor пишет что сначала нужно внести учетные данные.
Спасает только правка учетных данных непосредственно в базе данных
Евгений, вы постите обновления для базы данных, каждый раз затирая старые. Предположим я не обновлялся с версии 0.9, а сейчас уже 0.9.4 и хочу обновить базу данных. Мои действия следующие: искать вручную коммиты с переходом по версиям и потом у себя переключаться между коммитами и поочереди применять обновления. Что утомительно немного. Было бы проще, если для каждой версии были гитовые теги, а еще лучше если бы эти файлы были одновременно доступны (папка, где будут храниться обновления БД к каждой версии программы)
Не отображаются поля данных для редактирования учетных данных
В строчке указаны неправильные трекеры.
Я заменил ее на:
var a = ['kinozal.tv', 'lostfilm.tv', 'nnm-club.ru', 'novafilm.tv', 'rutracker.org', 'rutor.org', 'tfile.me'];
http://savepic.net/5042663.png
Сериалы добавлены в качестве 720p, но в морде показывает SD
IE кеширует все post-запросы (в том числе и ajax), поэтому в нем торрент монитор фактически не работает.
К счастью, jquery умеет это фиксить, достаточно его правильно настроить.
достаточно вставить в то место, где инициализируется jquery:
$.ajaxSetup({ cache: false });
Хотелось бы иметь возможность сортировки по дате обновления, а лучше по всем параметрам.
Спасибо!
У сервиса dropbox есть АПИ, можно добавить новый метод сохранения файла на жесткий диск или в dropbox, таким образом можно будет ставить скрипт на сервер, а качать уже на другой машине.
Хочется поддержки других трекеров.
http://free-torrents.org
http://book.libertorrent.com
Обратил внимание, что перестали отслеживаться торренты на nnm-club. Похоже у них появился редирект при логине и порядок следования кук.
Подправил вот так:
diff --git trackers/nnm-club.ru.engine.php trackers/nnm-club.ru.engine.php
index b5ec4aa..eb9d988 100755
--- trackers/nnm-club.ru.engine.php
+++ trackers/nnm-club.ru.engine.php
@@ -27,6 +27,7 @@ class nnmclub
curl_setopt($ch, CURLOPT_HEADER, 1);
curl_setopt($ch, CURLOPT_TIMEOUT, 15);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
+ curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_URL, "http://nnm-club.ru/forum/login.php");
curl_setopt($ch, CURLOPT_POSTFIELDS, "username={$login}&password={$password}&login=%C2%F5%EE%E4");
$result = curl_exec($ch);
@@ -146,7 +147,7 @@ class nnmclub
//если подходят - получаем куки
if (preg_match_all("/Set-Cookie: (.*);/iU", nnmclub::$page, $array))
{
- nnmclub::$sess_cookie = $array[1][0]."; ".$array[1][3];
+ nnmclub::$sess_cookie = implode("; ", $array[1]);
//запускам процесс выполнения, т.к. не может работать без кук
nnmclub::$exucution = TRUE;
}
Вроде работает.
Спасибо.
Добавил мониторить пользователя rutracker HELENA0512
Появились раздачи пользователя в разделе "Пользователи", но при нажатии кнопки скачать, torrent файл не добавляется для закачки.
Папка указана верно и доступна на запись, проверка во вкладке тест, в скрипте, говорит о том-же.
PHP 5.4.8
Скрины:
http://d.pr/i/MB3S
http://d.pr/i/23tY
При добавлении сериала A Young Doctor's Notebook, получаем "Название содержит недопустимые символы".
При добавлении так "A Young Doctors Notebook" или "A Young" или "Young" или "Notebook" сериал не мониторится.
ваш скрипт нормально обновляет, скачивает и кладет торренты в нужную директорию. только вот при старте торрента такая вот ошибка: http://db.tt/t77NXNHx
при скачивании и добавлении торрент-файла вручную - все ок.
в php пока не сведущ, ошибку исправить вряд ли смогу. спасибо.
Есть специалисты по этой БД? Все выходные борюсь, никак не получается допилить до конца. Кто то готов взяться?
Все равно установка ручная, а пользователям будет удобнее обновляться прямо из gitа :)
В данный момент реализовано для рутрекера и ннм-клаба - нужна ли это вообще функция? Стоит ли её реализовывать для tfile.me и tapochek.net (на rutor.org и kinozal.tv нет поиска по автору)?
Это все можно записать в реадми.
Noscript блочит часть запросов нужно добавить больше прав сайту с торрент монитором.
Заходите в Noscript - настройки - дополнительно - ABE - набор правил SYSTEM и добавляем строку для сайта с монитором.
К примеру было :
Site LOCAL
Accept from LOCAL
Deny
Делаем:
Site LOCAL
Accept from LOCAL
Accept ALL from *.webmoney.ru
Deny
Может кто-нибудь может нарисовать favicon?
Было бы интересно.
Навеяно вот этим: File does not exist: /var/www/torrentmonitor/favicon.ico
Вчера вечером добавил сериалы, но до сих пор никаких движений...
Проверял novafilm, с ним работает без проблем.
Спасибо!
Последние 2 недели я стал часто слышать жалобы о том, что lost стал мудрить с релизами и выпускает серии то в 720 то в 1080, как показало изучения форума - видимо ничего не изменится уже. Отсюда возникает вопрос - как решать данную проблему? Пока единственный "разумный" вариант, который мне предложили, сделать дополнительную настройку "авто HD", которая будет качать 720 или 1080 в зависимости от того - что раньше выйдет. Меня смущает лишь то, что появится ещё один пункт меню в настройке, а так выглядит в принципе вполне разумным решением. Хочу услышать ваше мнение.
На самом деле идея витает у меня в голове уже достаточно давно. Сейчас скрипт рассчитан исключительно на энтузиастов кто хочет/может держать на домашнем сервере/роутере/коробочке веб-сервер и на нём что то поднимать/настраивать. Но ведь есть ещё достаточно большой % людей, кто подобными средствами или знаниями не располагает. Так вот была идея организовать ресурс, на котором пользователи могли бы регистрироваться, получать некоторое кол-во дискового пространства и добавлять раздачи, торренты которых складывались бы в эту директорию, а так же было удобное средство для монтирования этой директории в систему (аля дропбокс). Что бы не работать в убыток - сделать N-ное кол-во раздач бесплатным, а свыше лимита, ну что то порядка $5/год (я не думаю что пользователей будет прям много тысяч, а хост под это дело обойдётся не дёшево). Тут есть несколько проблем, связанных с достаточно большим объёмом проверяемых данных, придётся продумывать кэширование и т.д., но на мой взгляд самое сложное (ну просто под ОС я вообще не писать) это реализовать простое и удобное подключение удалённой директории для её мониторинга локальной торрент-качалкой. Может кто то хочет поучаствовать, по тому что в одиночку я такое точно не потяну. Готов взять на себя хостинг, благо с серверами у меня проблем не. Организовать такой небольшой стартап. Я не умею зарабатывать на чём то, помимо своей освнойно работы, по этому не питаю иллюзий на то что ресурс будет приносить какие то большие деньги, а если это вдруг так произойдёт - я готов их разделить между всеми участниками поровну, оставив себе только ежемесячные траты на оплату хостинга, мне интересен сам проект и его создание.
Все установил, все настроил как по мануалу, но почему то при запуске теста пишет что трекеры на которые я дал авторизационную инфу недоступны. Думал, думал и додумался запустить engine.php принудительно без крона (ибо в кроне запускает через -q, а ползать по логам и ловить ошибки лень). Мне выдало следущее:
% php ./engine.php
Error!: SQLSTATE[HY000] [2002] No such file or directory<br/>%
Как это все интерпритировать? Я пытался найти где именно происходит ошибка в коде проги, но так и не нашел (хоть и пхп знаю не плохо).
И как мне все это настроить таким образом чтобы оно работало?
Предлагаю сделать возможность указывать путь закачки торрент файлов для каждого сериала отдельно при его добавлении.
Спасибо
Не обновляется тема раздачи, например при добавлении в раздачу новвой серии сериала, название темы меняется, с указанием количества серий в раздаче - пример: Теория Большого Взрыва / The Big Bang Theory / Сезон: 7 / Серии: 1-5 из 24. В TorrentMonitor название темы остаетсятакой, какой она была на момент добавление темы
Nnm-club изменил формат вывода даты обновления, из-за чего перестали обновляться торенты с этого трекера.
После обновления до версии 0.9, торренты не скачивает, в меню "Торренты" пусто, хотя в БД все на месте и новые добавляются.
Ошибок нет.
Тест проходит нормально.
Cron отрабатывает, ошибок нет.
Файл laststart.txt обновляется.
"Обновился" торрент, пришло сообщение
Дата: 01 Янв 2014 17:32:36
Трекер: ххххххх
Сообщение: ххххххххх обновлён.
Что за странная дата? Откуда она взялась?
date
Втр Янв 28 15:08:22 MSK 2014
Вчера столкнулся с тем, что синтаксис, имеющийся в приложении на данный момент совершенно не работоспособен с postgresql, соответственно все запросы нужно переписывать целиком, а в некоторых случаях под неё писать отдельные запросы. Кто то готов за это взяться? Ввиду отсутствия свободного времени в ближайшей перспективе и отсутствия опыта работа с pgsql, было бы хорошо, если бы кто то взялся (а заодно можно и mssql проверить, ибо винды у меня нет ни в каком обличие).
upd: в общем то я почти всё переписал, остались только запросы на INSERT, там проблема с автоинкрементом, так что нужно просто поправить дамп базы для первоначального развёртывания, но то что я успел сделать вчера - забыл дома, вечером буду допиливать по возможности :(
в update.sql ошибки
ALTER TABLE torrent
ADD hash
VARCHAR(40) NOT NULL; для SQLite должна содержать значение по умолчанию, например
ALTER TABLE torrent
ADD hash
VARCHAR(40) NOT NULL DEFAULT 0
;
Запрос INSERT INTO settings
(id
, key
, val
) не выполнится, т.к. значение key 7 и 8 уже существуют.
можно поставить фильтр на закачку полных сезонов?
сейчас возникает ошибка ( на примере Терра Нова)
скачивает сезон, не может определить последнюю серию и все повторяется по кругу
Добавьте пожалуйста поддержку postgresql, попытался самостоятельно методом переноса схемы и правкой драйвера базы в конфиге. Но получил ошибку связанную с портом подключения к postgresql.
Сабж, например на рутрекере. Банальный пример: жду выхода фильма "film" в качестве 1080p. Так как формат заголовков тем на рутрекере более-менее стандартизирован, можно сделать что-нибудь в стиле "+film +1080p", и сделать две опции - качать сразу или перемещать в inbox.
В случае с inbox торренты попадающие под правило высвечиваются на отдельной вкладке, где их можно подтвердить/дропнуть. В случае подтверждения начинаем закачку торрента, в случае дискарда маркируем его в базе как "bad" и больше в данном поиске не показываем.
Просто идея. Было бы удобнее RSS :)
public static function checkWriteToTorrentPath($path)
{
return is_writable($path);
}
Привет
А нет ли планов реализовать взаимодействие с transmission-daemon? Дабы прежде чем добавлять обновленный торрент, удалять предыдущий?
Проверил вывод запуска engine.php
В лог сыплется:
PHP Notice: Undefined offset: 49 in /srv/http/torrent/trackers/rutracker.org.search.php on line 38
PHP Notice: Undefined offset: 1 in /srv/http/torrent/trackers/lostfilm.tv.engine.php on line 94
PHP 5.4.9
Не знаю насколько критично.
Предлагаю сделать, обновление полуавтоматом, наподобие обновления в Tiny Tiny Rss
там обновление полностью делается самим веб приложением, обновляются файлы , бд, конфиг восстанавливается.
Предлагаю внести в фронт, либо в config.php настройку, в каком качестве забирать torrent с lostfilm.tv
Сейчас доступно 3 вида: http://d.pr/i/Zu2t
В связи с блокировками nnm-club и rutor недоступны. В дальнейшем планируется расширение списка блокируемых сайтов.
На странице "Тест" выдается "Трекер xxxxxx не доступен.", при каждом запуске скриптов на странице "Ошибки" имею "Не могу получить доступ к трекеру."
На версиях TM 0.7.x в секциях с курл добавлял строки для работы через socks5 прокси и все через прокси (tor) работало нормально. Возможно ли на 0.8.x версии добавить (опционально) работу TM через прокси (http+socks) ?
Собственно не работает отслеживание и закачка торрентов с lostfilm.tv. При этом в консоль никаких ошибок не выводит.
Версия php PHP 5.5.7
Ставил с нуля.
При попытке добавить сериал на Lostfilm "A Young Doctor's Notebook" всплывает ошибка, скорее всего из-за одиночной кавычки в названии. Пробовал экранировать \'
- без результата
Существуют ли оные? Знаю что люди разворачиваются систему на linux/unix и различных коробочках на базе linux`а, а есть ли те, кто разворачивал систему под Windows (серверную или нет - не важно). Интересно просто знать. Или может под Mac OS, OS/2, Solaris, другие неведомые зверушки?
В RSS - есть (http://lostfilm.tv/rssdd.xml)
На сайте есть (http://www.lostfilm.tv/browse.php?cat=174) 03.12.2012 21:44, 1 сезон 8 серия
В мониторе - нет, http://d.pr/i/tOKB
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.