Мультитрекер (подгрузка внешних пиров)

Started by Exile on 2015-03-01 09:37 — 54 replies, 11758 views

#31
На всякий случай прикладываю сам файл displaying_torrent
#32
В общем поставил данный мод, сначала внес все изменения из файла install, затем из файла Addons Multitracker 2.2.txt

Ничего не загружал на сайт кроме файла class.snoopy.php

Теперь при заходе в любую тему пишет:

Parse error: syntax error, unexpected '}' in library/attach_mod/displaying_torrent.php on line 917

Версия ТП - 2.1.5

Файл displaying_torrent.php


Spoiler content hidden.

Я подписал строку на которую жалуется. Крон обновлял, кеш чистил

Написано же постами выше требует адаптации, зачем мучиться если не получается и можно воспользоваться рабочим вариантом? https://torrentpier.com/resources/multitreker-parser-chisla-vneshnix-pirov.173/
#33
С рутора не берет пиры.

$bb_cfg['multitracker'] = array(
    'max_trackers'  => 10,
    'bad_trackers'    => array(
        $domain_name,
        //'retracker.local',
        'bt.torrents.by',
    ),
    'search'  => array(
        'udp://opentor.org:2710'
    ),
    'replace' => array(
        'http://pubt.net:2710/announce'
    ),
);
В конфиге пропиши замену на рабочий анонсер
#34
Вот тут ситуация довольно спорная. Нельзя тут суммировать сидов и тем более клеить пиры

            echo"<pre>";   
            //var_dump($tracker);           
            foreach ($tracker as $url)
            {
                $snoopy->fetch($url . $announce);
    
            //var_dump($url . $announce);
           
               
                if(!$snoopy->timed_out)
                {
   
            //var_dump($url . $announce);                   
                   
                    $tor = bdecode($snoopy->results);
                    @$tor_seeders += (int) $tor['complete'];
                    @$tor_leechers += (int) $tor['incomplete'];
                    @$tor_peers .= $tor['peers'];
                }
            }

Если первый публичный трекер вернет 10тыс сидов, то и остальные публичные вернут по 10 тыс.
А если трекеров 100штук в торренте?
Получим миллиард сидов. А если сто раз поклеить переменную с пирами, то что мы получим? Вот вот...
---------------------------------------
Можно конечно отсеять дубли трекеров добавив перед foreach
$tracker=array_unique($tracker);

Но не сильно поможет.
#35
А есть другой вариант? Навскидку, брать максимальное из пиров всех трекеров, но и это будет неверно. Так что тут по вкусу, кому как удобнее будет.
#36
Есть очень хороший вариант - это брать сидов через dht средствами php. Но я нагуглил кучу всего,но не разобрался ещё. Если сделаю,со всеми поделюсь
#37
Со вчерашнего дня мод стал плохо парсить сидов (пиров парсит спустя 10-15 минут после добавления раздачи). Пиров показывает, а сидов нет (точнее сидов он начинает показывать спустя ~ 1 сутки). В логах чисто. Единственно, что напрягает: при попытке вручную запустить крон задачу выдает fatal error:
PHP Fatal error:  DB Error [library/includes/cron/jobs/tr_cleanup_and_dlstat.php(201)] in /var/www/admin/data/www/mysite/library/includes/core/mysql.php on line 804
#38
@ExPlayer а что говорится в неправильном запросе ?
#39
@ExPlayer а что говорится в неправильном запросе ?
Вообще ругается на эту строку (в mysql.php):
trigger_error($msg, E_USER_ERROR);
Но, Fatal Error выдает только в случае запуска крон задачи из админки вручную, если вручную не запускать, то ошибка не появляется. К тому же заметил, что перестало парсить сидов с англоязычных трекеров, на которых регистрация не нужна (rarbg.to, kat.cr, limetorrents.cc). До вчерашнего дня было всё нормально...
#40
@ExPlayer лог sql в студию.