IPB

Здравствуйте, гость ( Вход | Регистрация )


kolobok3D
Отправлено: 7.2.2010, 21:57


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


в конфиге
redirect_url = http://ссыдка.ру/индекс.хтм
  Форум: Обсуждение · Просмотр сообщения: #5411 · Ответов: 1 · Просмотров: 19 099

kolobok3D
Отправлено: 5.2.2010, 12:44


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


попробуй opentracker
  Форум: Установка РеТрекера · Просмотр сообщения: #5405 · Ответов: 5 · Просмотров: 8 930

kolobok3D
Отправлено: 20.11.2009, 22:29


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


С трекера вообще нельзя качать. тык
А использование ретрекера с usb-модемом бессмысленно.
  Форум: Обсуждение · Просмотр сообщения: #5159 · Ответов: 1 · Просмотров: 19 445

kolobok3D
Отправлено: 27.8.2009, 16:04


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


нет слов...
http://84.53.200.19/stat/torrents.php не есть статистика для xbtt...
Клиенты должны обращаться к http://84.53.200.19/stat/announce.php чтоб отображалась статистика тут.

зы. Ни когда не понимал желания что-то сделать, при наличии отсутствия понимания того, что ты делаешь.
  Форум: Статистика · Просмотр сообщения: #4608 · Ответов: 117 · Просмотров: 362 100

kolobok3D
Отправлено: 17.8.2009, 14:12


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Мб стоит проверку ретрекера по ip сделать? smile.gif
Я только что добавил 2й раз свой ретрекер huh.gif
Код
120=http://bt-local.no-ip.org:2710/announce
121=http://bt-local.no-ip.org:80/announce.php
  Форум: Обсуждение · Просмотр сообщения: #4539 · Ответов: 52 · Просмотров: 296 471

kolobok3D
Отправлено: 5.8.2009, 2:05


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Цитата(ZLO @ 5.8.2009, 2:55) *
точно появился. странно. недавно добавили? обновлял второго числа.

http://www.freshports.org/net/opentracker

Цитата
Port Added: 29 Jul 2009 14:18:03

Цитата(ZLO @ 5.8.2009, 2:55) *
ps: юзерам вписывать как я понял http://site:2710/ в свойства торрента?


http://site:2710/announce
  Форум: Установка РеТрекера · Просмотр сообщения: #4470 · Ответов: 32 · Просмотров: 97 813

kolobok3D
Отправлено: 5.8.2009, 1:50


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Дак обнови
portsnap или cvsup в помощь
  Форум: Установка РеТрекера · Просмотр сообщения: #4468 · Ответов: 32 · Просмотров: 97 813

kolobok3D
Отправлено: 5.8.2009, 1:05


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Код
make -C /usr/ports/net/opentracker install clean


/usr/local/etc/opentracker/opentracker.conf:
Код
listen.tcp_udp 0.0.0.0:2710
access.stats_path sta
tracker.redirect_url http://re-tracker.ru/


Код
opentracker_enable="YES" >> /etc/rc.conf
opentracker_config="/usr/local/etc/opentracker/opentracker.conf" >> /etc/rc.conf
/usr/local/etc/rc.d/opentracker start


И не делаем моск с xbtt smile.gif
  Форум: Установка РеТрекера · Просмотр сообщения: #4466 · Ответов: 32 · Просмотров: 97 813

kolobok3D
Отправлено: 25.7.2009, 0:49


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Цитата(FreeM@N @ 25.7.2009, 1:24) *
А как с конечными слешами в конфиге? нужно ставить или не критично? на тестовой версии в gentoo нужно было ставить...

не важно
  Форум: Патчер торрентов · Просмотр сообщения: #4441 · Ответов: 29 · Просмотров: 327 333

kolobok3D
Отправлено: 25.7.2009, 0:09


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Обновил первый пост
  Форум: Патчер торрентов · Просмотр сообщения: #4439 · Ответов: 29 · Просмотров: 327 333

kolobok3D
Отправлено: 10.7.2009, 12:26


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Цитата(Kopa @ 10.7.2009, 13:05) *
ЮВАО Южнопортовый (поменялся ip в связи со сменой роутера)

http://10.163.64.112:2710/announce
(Внешний попрежднему http://kaptur.no-ip.org:2710/announce)


К сервису no-ip нужно не внешний ip привязывать, а внутренний.
  Форум: Москва · Просмотр сообщения: #4385 · Ответов: 136 · Просмотров: 715 886

kolobok3D
Отправлено: 12.5.2009, 18:23


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Цитата(alchemist @ 10.5.2009, 17:23) *
Добавьте, вроде всё должно работать. Машина 24/7
http://alchemist.homeftp.net:2710/announce
ЮАО, Донской район

А почему ДНС возвращает внешний ip(93.81.239.152)?
  Форум: Москва · Просмотр сообщения: #4118 · Ответов: 136 · Просмотров: 715 886

kolobok3D
Отправлено: 22.4.2009, 18:50


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Цитата(GroboiD @ 22.4.2009, 18:22) *
Предложу другое решение - opentracker.
Прост и легок. Не требует сиквела для работы. Поддерживает udp.
Конфиг у меня из 2ух строчек:
listen.tcp_udp 10.x.x.x:2710
tracker.rootdir /usr/local/etc/opentracker

У меня на 7.1 amd64 не завелся.
  Форум: Установка РеТрекера · Просмотр сообщения: #3900 · Ответов: 32 · Просмотров: 97 813

kolobok3D
Отправлено: 22.4.2009, 12:54


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Цитата(kiabrin @ 22.4.2009, 1:19) *
listen_port = mega_shok.gif
супер.

оставь только
listen_port = 2710.
  Форум: Установка РеТрекера · Просмотр сообщения: #3890 · Ответов: 32 · Просмотров: 97 813

kolobok3D
Отправлено: 21.4.2009, 21:31


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Цитата(kiabrin @ 21.4.2009, 20:05) *
имею сервак под FreeBSD, вывешеный через port forwarding под реальный IP, в корбине, в митино. работает круглосуточно, привязан домен.
как на этом повесить бы ретрекер?


Код
make -C /usr/ports/devel/subversion install clean

Код
make -C /usr/ports/devel/boost install clean

Код
rehash

Код
cd /usr/local/ && svn co https://xbtt.svn.sourceforge.net/svnroot/xbtt/trunk/xbt/misc xbt/misc && svn co https://xbtt.svn.sourceforge.net/svnroot/xbtt/trunk/xbt/Tracker xbt/Tracker

Код
cd xbt/Tracker && chmod +x make.bsd.sh && ./make.bsd.sh


Собсно создать базу в mysql и залить туда дамп:
Код
mysql -uroot -p


Код
>CREATE USER 'xbt'@'localhost' IDENTIFIED BY '***YOU_PASSWORD***';
>GRANT USAGE ON *.* TO 'xbt'@'localhost' IDENTIFIED BY '***YOU_PASSWORD***';
>CREATE DATABASE IF NOT EXISTS `xbt`;
>GRANT ALL PRIVILEGES ON `xbt`.* TO 'xbt'@'localhost';
>exit;


Код
mysql -uxbt -p xbt < xbt_tracker.sql


Код
cp xbt_tracker.conf.default xbt_tracker.conf && ee xbt_tracker.conf


У меня содержимое такое (над своим думай сам.):
Код
mysql_host = localhost
mysql_user = xbt
mysql_password = xbt
mysql_database = xbt
pid_file = /var/run/xbt_tracker.pid
announce_interval = 1800
anonymous_connect = 1
anonymous_announce = 1
anonymous_scrape = 1
auto_register = 1
clean_up_interval = 60
daemon = 1
debug = 0
full_scrape = 0
gzip_debug = 1
gzip_scrape = 1
listen_ipa = 10.27.12.214
listen_port = mega_shok.gif
listen_port = 2710
log_access = 0
log_announce = 0
log_scrape = 0
read_config_interval = 60
read_db_interval = 60
redirect_url = http://re-tracker.ru
scrape_interval = 0
table_announce_log = xbt_announce_log
table_files = xbt_files
table_files_users = xbt_files_users
table_scrape_log = xbt_scrape_log
table_users = xbt_users
write_db_interval = 15


Запуск такой мулькой:
Код
ee /usr/local/etc/rc.d/xbt.sh


Содержимое xbt.sh:
Код
#!/bin/sh

. /etc/rc.subr

name="xbt_tracker"
rcvar=`set_rcvar xbt_tracker`

load_rc_config ${name}

: ${xbt_tracker_enable="NO"}
: ${xbt_tracker_flags="--conf_file /usr/local/xbt/Tracker/xbt_tracker.conf"}

pidfile="/var/run/${name}.pid"
command="/usr/local/xbt/Tracker/${name}"
required_files="/usr/local/xbt/Tracker/${name}.conf"

case "${xbt_tracker_flags}" in
*-p\ *)
        echo "ERROR: \$xbt_flags includes -p option." \
                "PID file is already set to $pidfile."
        exit 1
     ;;
*)
        command_args="-p ${pidfile} ${xbt_tracker_flags}"
     ;;
esac


run_rc_command "$1"


Код
chmod +x /usr/local/etc/rc.d/xbt.sh


Код
echo xbt_tracker_enable="YES" >> /etc/rc.conf
echo xbt_tracker_flags="--conf_file /usr/local/scripts/xbt/Tracker/xbt_tracker.conf" >> /etc/rc.conf


Код
/usr/local/etc/rc.d/xbt.sh start


Код
ps -ax | grep xbt


Код
1244  ??  Ss     0:00,48 /usr/local/scripts/xbt/Tracker/xbt_tracker --conf_file /usr/local/xbt/Tracker/xbt_tracker.conf -p /var/run/xbt_tracker.pid
1526  p0  S+     0:00,00 grep xbt
  Форум: Установка РеТрекера · Просмотр сообщения: #3877 · Ответов: 32 · Просмотров: 97 813

kolobok3D
Отправлено: 10.4.2009, 23:55


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


как то так....
Код
if ($opt eq "update") {
    use LWP::Simple;
    use IO::Socket;

    @list = split(/\n/, (get "http://re-tracker.ru/resume.php?tr_list=1&city=+$gorod&isp=+$prov"));
    @list = sort(@list);
    binmode STDOUT,":bytes";
    my $p = "";
    my $out = "";
for $t(@list) {
        next if $t eq $p;
        $p=$t;
        $t=~m#//(.+?):(\d+)/#;
        $s=new IO::Socket::INET(PeerAddr=>$1,PeerPort=>$2,Timeout=>2);
        if($s) {
                $out .= "$t\n";
                close $s;
        }
}
open (RTR, ">$file_txt");
print RTR "$out";
close (RTR);
exit 0;
}
  Форум: Патчер торрентов · Просмотр сообщения: #3750 · Ответов: 29 · Просмотров: 327 333

kolobok3D
Отправлено: 9.4.2009, 21:07


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Несет ли в себе чекбокс "Активные (есть seeder или leecher) " какой-нибудь функционал?
Судя по коду из темы "Re-Tracker source" в 'tracker_stats' не может быть записи с одновременно нулевым количеством сидов и личей.
  Форум: Статистика · Просмотр сообщения: #3736 · Ответов: 1 · Просмотров: 18 406

kolobok3D
Отправлено: 6.4.2009, 22:56


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Цитата(xxx333000 @ 6.4.2009, 19:28) *
Если с GUI тяжело, то давайте хоть опцию "включить добавление статистических параметров во все урлы"

+1
Не плохо бы.
  Форум: Патчер торрентов · Просмотр сообщения: #3646 · Ответов: 138 · Просмотров: 654 818

kolobok3D
Отправлено: 17.3.2009, 5:50


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


FreeBSD
Код
make -C /usr/ports/www/p5-libwww install clean
make -C /usr/ports/converters/p5-Text-Iconv install clean
make -C /usr/ports/devel/p5-Config-IniFiles install clean
  Форум: Патчер торрентов · Просмотр сообщения: #3157 · Ответов: 29 · Просмотров: 327 333

kolobok3D
Отправлено: 14.3.2009, 18:49


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Спасибо за идею, но я поступил немного подругому:
Все в операции выполняет 1 скрипт.
т.к. у меня FreeBSD и запускаю я rtorrent вот так:
Код
#!/bin/sh
export HOME=/home/kolobok/
/usr/bin/su -m kolobok -c '/usr/local/bin/screen -dmS rt /usr/local/bin/rtorrent -n -o import=/usr/local/etc/rtorrent.conf'

чтобы пропатчить активные торренты, приходится останавливать торрент вручную, патчить и опять вручную запускать.
активные торренты патчатся командой:
Код
/путь_к_патчеру/patcher.pl current

обновление ретрекеров:
Код
/путь_к_патчеру/patcher.pl update


patcher.conf:
Код
## Деректория, которую шедулит патчер и берет новые торренты.
fdirectory = /data/share/torrents/

## Директория, в которую патчер отдает пропатченые торренты rtorrent'у.
tdirectory = /data/.torrents/

## Директория, где rtorrent хранит торренты
sdirectory = /data/.session/

## Город (2 - Москва)
gorod = 2

## Номер провайдера в городе (1 - Корбина(Москва))
prov = 1


patcher.pl:
CODE
#!/usr/bin/perl

$cur_dir = `dirname $0`;
$cur_dir =~ s/\n//;
$opt = @ARGV[0];
require "$cur_dir/tf.pl";

open (CONFIG, "$cur_dir/patcher.conf") || die "Cannot open file $cur_dirpatcher.conf: $!";
while (<CONFIG>) {
my $comment = '#';
if(/^$comment/) {
}
else {
my ($param,$arg) = split("=",$_);
chomp $param;
chomp $arg;
$param =~ s/\s//g;
$arg =~ s/\s//g;
if ($param eq "fdirectory") {
$fdirectory = $arg;
}
if ($param eq "tdirectory") {
$tdirectory = $arg;
}
if ($param eq "sdirectory") {
$sdirectory = $arg;
}
if ($param eq "gorod") {
$gorod = $arg;
}
if ($param eq "prov") {
$prov = $arg;
}

}
}
close (CONFIG);

$isp="$gorod+$prov";

if ($opt eq update) {
use LWP::Simple;
use IO::Socket;
use Config::IniFiles;
use Text::Iconv;

$u2k=new Text::Iconv("utf-16","koi8-r//translit");
$list=$u2k->convert(get "http://re-tracker.ru/trackerssimple.ini");
open (INI, ">/tmp/trackerssimple.ini");
print INI "$list";
close (INI);
$subject = Config::IniFiles->new( -file => '/tmp/trackerssimple.ini' );
$gorod = $subject->val("Город", "$gorod");
$prov = $subject->val("Провайдеры $gorod", "$prov");
@values = $subject->Parameters("Ретрекеры $gorod $prov");
foreach (@values) {
$retracker = $subject->val("Ретрекеры $gorod $prov", $_);
if ($retracker=~ m!(http://[^/]+/[^\s]+)!ig) {
push(@list, $&);
}
}
@list = sort(@list);
binmode STDOUT,":bytes";
for $t(@list) {
next if $t eq $p;
$p=$t;
$t=~m#//(.+?)sad.gif\d+)/#;
$s=new IO::Socket::INET(PeerAddr=>$1,PeerPort=>$2,Timeout=>2);
if($s) {
$out .= "$t\n";
close $s;
}
open (RTR, ">/tmp/retrackers.txt");
print RTR "$out";
close (RTR);
}
exit 0;
}

open(RTR, "/tmp/retrackers.txt") || die "Cannot open file retrackers.txt: $!";
my @retrackers=<RTR>;
close RTR;

sub patch {
$torrent = new TF ("$torrentfile");
$a = $torrent->announce();
@list = ([($a)]);
foreach $retracker (@retrackers) {
chomp $retracker;
$b="$retracker";
if ($retracker eq "http:\/\/re-tracker.ru:mega_shok.gif\/announce.php") {
$size = $torrent->length();
if ($size == 0) {
$filesref = $torrent->files();
@files = @{$filesref};
foreach (@files) {
%file = %{$_};
$size = $size + $file{'length'};
}
}
$comment = $torrent->publisherurl();
if (!defined $comment) {
$comment = $torrent->comment();
}
# $comment =~ s/([^A-Za-z0-9])/sprintf("%%%02X", ord($1))/seg;
$b="$retracker?name=&size=$size&comment=$comment&isp=$isp";
}
@list=(@list, [($b)]);
}
$torrent->announcelist(@list);
}

if ($opt eq current) {
opendir (TRR, "$sdirectory") || die "Cannot open $sdirectory: $!";
@tr = grep { !/^\.{1,2}$/ && (-f "$sdirectory"."/".$_) && /.torrent$/i } readdir TRR;
closedir TRR;
if (!defined @tr) {
exit 0;
} else {
foreach $tr(@tr) {
chomp $tr;
$torrentfile = "$sdirectory/$tr";
patch $torrentfile;
$torrent->save("$sdirectory/$tr");
}
}
} else {
opendir (TRR, "$fdirectory") || die "Cannot open $sdirectory: $!";
@tr = grep { !/^\.{1,2}$/ && (-f "$fdirectory"."/".$_) && /.torrent$/i } readdir TRR;
closedir TRR;
if (!defined @tr) {
exit 0;
} else {
foreach $tr(@tr) {
chomp $tr;
$torrentfile = "$fdirectory/$tr";
patch $torrentfile;
$torrent->save("$tdirectory/$tr");
system ("rm -f \"$fdirectory/$tr\"");
}
}
}
exit 0;

перед первым запуском нужно выполнить:
Код
/путь_к_патчеру/patcher.pl update

потом от root выполнить crontab -e и добавить следующие записи:
Код
*/1      *       *       *       *       /путь_к_патчеру/patcher.pl
0        0       *       *       *       /путь_к_патчеру/patcher.pl update


+ исправил добавление comment для nnm-club.ru
+ список ретрекеров открывается 1 раз
+ теперь не сохраняются торренты в odirectory
+ данные статистики добавляются только для re-tracker.ru
Прикрепленные файлы
Прикрепленный файл  patcher.tar.gz ( 3.92 килобайт ) Кол-во скачиваний: 29
 
  Форум: Патчер торрентов · Просмотр сообщения: #3092 · Ответов: 29 · Просмотров: 327 333

kolobok3D
Отправлено: 13.3.2009, 10:23


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


"fdirectory = /data/share/torrents/" шедулит скрипт и передает в
"tdirectory = /data/.torrents/" которую шедулит rtorrent, а
"odirectory = /data/share/torrents/.old/" просто для удобства.
  Форум: Патчер торрентов · Просмотр сообщения: #2973 · Ответов: 29 · Просмотров: 327 333

kolobok3D
Отправлено: 7.3.2009, 12:24


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


p2p.corbina.net там тоже есть
Код
host p2p.corbina.net
p2p.corbina.net has address 85.21.79.38

но зачем 2 раза?
  Форум: Москва · Просмотр сообщения: #2675 · Ответов: 136 · Просмотров: 715 886

kolobok3D
Отправлено: 7.3.2009, 2:07


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


netmaster.dyndns.ws
Код
host netmaster.dyndns.ws
netmaster.dyndns.ws has address 85.21.79.38

нафих в списке инетовский трекер?
  Форум: Москва · Просмотр сообщения: #2666 · Ответов: 136 · Просмотров: 715 886

kolobok3D
Отправлено: 7.3.2009, 1:39


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Ну получилось что-то
patcher.conf:
Код
## Деректория, откуда берутся не пропатченые торренты.
fdirectory = /data/share/torrents/

## Директория, за которой наблюдает rtorrent.
tdirectory = /data/.torrents/

## Директория, в которую складываются не пропатченые торренты после обработки патчером.
odirectory = /data/share/torrents/.old/

## Город (2 - Москва)
gorod = 2

## Номер провайдера в городе (1 - Корбина(Москва))
prov = 1


patcher.pl(теперь его править не нужно):
CODE
#!/usr/bin/perl

require "/root/scripts/tf.pl";

open (CONFIG, "/root/scripts/patcher.conf") or die "Cannot open file: $!";
while (<CONFIG>) {
my $comment = '#';
if(/^$comment/) {
}
else {
my ($param,$arg) = split("=",$_);
chomp $param;
chomp $arg;
$param =~ s/\s//g;
$arg =~ s/\s//g;
if ($param eq "fdirectory") {
$fdirectory = $arg;
}
if ($param eq "tdirectory") {
$tdirectory = $arg;
}
if ($param eq "odirectory") {
$odirectory = $arg;
}
if ($param eq "gorod") {
$gorod = $arg;
}
if ($param eq "prov") {
$prov = $arg;
}
}
}
close (CONFIG);

$isp="$gorod\+$prov";

opendir (TRR, "$fdirectory") || die "$!";
@tr = grep { !/^\.{1,2}$/ && (-f "$fdirectory"."/".$_) && /.torrent$/i } readdir TRR;
closedir TRR;

open(RTR, "/root/scripts/retrackers.txt") || die "$!";
my @retrackers=<RTR>;
close RTR;

if (!defined @tr) {
exit 0;
} else {
foreach $tr(@tr) {
chomp $tr;
$torrentfile = "$fdirectory/$tr";
$torrent = new TF ("$torrentfile");
$size = $torrent->length();
if ($size == 0) {
$filesref = $torrent->files();
@files = @{$filesref};
foreach (@files) {
%file = %{$_};
$size = $size + $file{'length'};
}
}
$comment = $torrent->publisherurl();
# $comment =~ s/([^A-Za-z0-9])/sprintf("%%%02X", ord($1))/seg;
$a = $torrent->announce();
@list = ([($a)]);
foreach $retracker (@retrackers) {
chomp $retracker;
$b="$retracker?name=&size=$size&comment=$comment&isp=$isp";
@list=(@list, [($b)]);
}
$torrent->announcelist(@list);
$torrent->save("$tdirectory/$tr");
system("mv -f \"$fdirectory$tr\" \"$odirectory$tr\"");
}
}


+ подкрутил тестер ретрекеров.
test.pl:
CODE
#!/usr/bin/perl
use LWP::Simple;
use IO::Socket;
use Config::IniFiles;
use POSIX;
use strict;
use Text::Iconv;
no utf8;

my $gorod;
my $prov;
open (CONFIG, "/root/scripts/patcher.conf") or die "Cannot open file: $!";
while (<CONFIG>) {
my $comment = '#';
if(/^$comment/) {
}
else {
my ($param,$arg) = split("=",$_);
chomp $param;
chomp $arg;
$param =~ s/\s//g;
$arg =~ s/\s//g;
if ($param eq "gorod") {
$gorod = $arg;
}
if ($param eq "prov") {
$prov = $arg;
}
}
}
close (CONFIG);
my $u2k=new Text::Iconv("utf-16","koi8-r//translit");
my $list=$u2k->convert(get "http://re-tracker.ru/trackerssimple.ini");

open (INI, ">/root/scripts/trackerssimple.ini");
print INI "$list";
close (INI);

my $subject = Config::IniFiles->new( -file => '/root/scripts/trackerssimple.ini' );
my $gorod = $subject->val("Город", "$gorod");
my $prov = $subject->val("Провайдеры $gorod", "$prov");

my @values = $subject->Parameters("Ретрекеры $gorod $prov");
my @list;
foreach (@values) {
my $retracker = $subject->val("Ретрекеры $gorod $prov", $_);
if ($retracker=~ m!(http://[^/]+/[^\s]+)!ig) {
push(@list, $&);
}
}
@list = sort(@list);
my $p="";
my $out="";
binmode STDOUT,":bytes";
for my $t(@list) {
next if $t eq $p;
$p=$t;
$t=~m#//(.+?)sad.gif\d+)/#;
my $s=new IO::Socket::INET(PeerAddr=>$1,PeerPort=>$2,Timeout=>2);
if($s) {
$out .= "$t\n";
close $s;
}
}
open (RTR, ">/root/scripts/retrackers.txt");
print RTR "$out";
close (RTR);

В крон допустим каждую ночь:
Код
crontab -e
0       0       *       *       *       /root/scripts/test.pl


В файле tf.pl по прежнему почма.
У меня впринципе все работает, но мож будут проблемы с кодировкой.
Код
~/scripts/>uname -a
FreeBSD gw.home.net 7.1-RELEASE-p1 FreeBSD 7.1-RELEASE-p1 #2: Sun Feb 22 22:36:03 MSK 2009     kolobok@gw.home.net:/usr/obj/usr/src/sys/GW  i386

Прикрепленные файлы
Прикрепленный файл  patcher.tar.gz ( 8.33 килобайт ) Кол-во скачиваний: 28
 
  Форум: Патчер торрентов · Просмотр сообщения: #2665 · Ответов: 29 · Просмотров: 327 333

kolobok3D
Отправлено: 5.3.2009, 21:53


Участник
**

Группа: Пользователи
Сообщений: 27
Регистрация: 22.2.2009
Пользователь №: 569


Версия 1.1
Конфиг:
Код
/usr/local/scripts/tr_patcher/>more patcher.conf
# Директория, за которой следит patcher.
fdirectory = /data/rtorrent/torrents

# Директория, в которую patcher скидывает торренты после добавления ретрекеров.
tdirectory = /data/rtorrent/.torrents

# Директория session из конфига rTorrent
sdirectory = /data/rtorrent/.session

# Город
gorod = 2

# Провайдер
prov = 1


Опции запуска:
Код
Проверяет папку fdirectory на наличие торрентов, патчит найденные и сохраняет в tdirectory.
./patcher.pl -p


Код
Патчит уже добавленныe в rTorrent торренты (перед запуском нужно остановить rTorrent).
./patcher.pl -c


Код
Обновляет список ретрекеров и проверяет их доступность.
./patcher.p -u


При первом запуске автоматически обновляет список ретрекеров и проверяет их доступность.

Для работы нужен перл собранный с поддержкой threads и модули LWP::Simple Text::Iconv.
скачать
  Форум: Патчер торрентов · Просмотр сообщения: #2629 · Ответов: 29 · Просмотров: 327 333


Новые сообщения  Открытая тема (есть новые ответы)
Нет новых сообщений  Открытая тема (нет новых ответов)
Популярная тема  Горячая тема (есть новые ответы)
Нет новых  Горячая тема (нет новых ответов)
Опрос  Опрос (есть новые голоса)
Нет новых голосов  Опрос (нет новых голосов)
Закрыта  Закрытая тема
Перемещена  Тема перемещена
 

RSS Текстовая версия Сейчас: 29.3.2024, 18:09
Top.Mail.Ru