Товарищщи скачивающие...
Добавлено: 2007-10-16 20:32:18
ночью сайт скачивайте...
достали уже...
достали уже...
Сталина давно нэт. Чтоби спасти Россию, ищитэ его внутри сэбя...
https://forum.lissyara.su/
Код: Выделить всё
ipfw add 1 deny tcp from ВАШ_IP to me 80
Целая куча халявных прокси спасет отцов руссой демократииlissyara писал(а):вы потом не обижайтесь наКод: Выделить всё
ipfw add 1 deny tcp from ВАШ_IP to me 80
Ага, таки допилил скрипт для зеркалирования. Один раз качает все, а потом только то что добавилось на "карте сайта".lissyara писал(а):это ты тока что качал, отец?)
lissyara писал(а):блядь, реферера поставили _http://support.microsoft.com
я увидел - вначале офигел
Код: Выделить всё
#!/usr/bin/perl
use LWP;
$PATH = '/usr/home/urgor/liss/';
system("mkdir -p $PATH");
$defaultreferer = 'http://support.microsoft.com';
GetResurse('http://www.lissyara.su/scripts/style.css', 'http://www.lissyara.su/', $PATH . 'scripts/style.css');
download($PATH,'http://www.lissyara.su/?id=1302&commented=1&print=1','http://support.microsoft.com',$PATH . 'index.htm');
sub download()
{
my ($path, $abcurl, $referer, $realname) = @_;
my %links = ();
print "$abcurl\t$referer\t$realname\n";
my $ua = LWP::UserAgent->new;
$ua->agent("Mozilla/8.0"); # Притворимся совместимым браузером !
my $req = HTTP::Request->new(GET => $abcurl);
$req->header('Accept' => 'text/html');
$req->referer($referer);
# send request
my $res = $ua->request($req);
# check the outcome
if ($res->is_success) {
my $content = $res->content;
my $html = $content;
my $filename = '';
#print "$realname\n";
open(fl, "> $realname");
print(fl $html);
close(fl);
#http://www.lissyara.su/?id=1503&commented=1&print=1 http://support.microsoft.com /usr/home/urgor/liss/1503.htm
#Unmatched ) in regex; marked by <-- HERE in m/http://www.lissyara.su/\?id=1305) <-- HERE / at ./liss.pl line 62.
# Разбираем скачанную страницу
$pos = index($abcurl,'?id=');
if($pos > 0) {
# Производим выборку урлов (сцылок на другие сраницы)
while (split /\n/, $content =~ m/<a\b([^>]+)>(.*?)<\/a>/ig) {
my $ahref = $1;
my $text = $2;
if ($ahref =~ m/\bhref\s*=\s*(?:"([^"]*)"|'([^']*)'|([^'">\s]+))/xi) {
my $url = $+;
# print $url . "\t$ahref 1\n";
$pos = index($url,'?id=');
if ($pos > -1) {
$ourl = $url;
if (index($url, '#') > 0) { $url = substr($url, 0, index($url,'#')); }
if (index($url, ')') > 0) { $url = substr($url, 0, index($url,')')); }
if (index($url, '&') > 0) { $url = substr($url, 0, index($url,'&')); }
$filename = substr($url, $pos + 4, length($url) - 4);
$filename =~ m/\d+/;
$filename = $filename. '.htm';
#print "$url\t$filename\n";
# Правим $html на локальные адреса
if (index($url,'?') > -1) {
$url = '\\' . substr($url, index($url, '?'), length($url));
# $url =~ s/\?/\\?/;
} # if index
$filename =~ s/\/*//;
#print "$url\t$filename\n";
$html =~ s/$url/$filename/g;
# Если такой страницы нет -- качаем
if (not -e ("$path/$filename")) {
$url =~ s/^\.\//http:\/\/www.lissyara.su\//;
$url =~ s/.*\/*\?/http:\/\/www.lissyara.su\/\?/;
if(index($url,':') == -1) { $url = 'http://www.lissyara.su/' . $url; }
@links{$url} = "$path$filename";
}
#print "$url\t$filename\n";
} # if ?id=
$pos = index($url,'?file=');
if ($pos > -1) {
if ($ahref =~ m/\btitle\s*=\s*(?:"([^"]*)"|'([^']*)'|([^'">\s]+))/xi) {
$filename = $+;
} else {
$filename = substr($url, $pos + 6, length($url) - 6);
} # else
my $ourl = $url;
$url =~ s/^\.\///;
$url =~ s/.*\/*\?//;
if(index($url,':') == -1) { $url = 'http://www.lissyara.su/scripts/downloads.php?' . $url; }
# print "------> $ourl\t$url\t$filename\n";
# Хытрый Лис проверяет referer, придется подсунуть правильный ;-)
GetResurse($url, $abcurl, $path . 'files/' .$filename);
# Правим $html на локальные адреса
if (index($ourl,'?') > -1) {
$ourl =~ s/\?/\\?/;
} # if index
$filename =~ s/\/*//;
$filename = 'files/' . $filename;
$html =~ s/$ourl/$filename/g;
} # if ?file=
} # if $ahref href
} # while
# Выбираем ресурсы (порно-картинки и прочую муть)
while (split /\n/, $content =~ m/<img\b([^>]+)>/ig) {
$res = $1;
if ($res =~ m/\bsrc\s*=\s*(?:"([^"]*)"|'([^']*)'|([^'">\s]+))/xi) {
$filename = $+;
$filename =~ s/^\.\///;
$filename =~ s/.*\/*\?//;
$filename =~ s/\\//;
if (length($filename) == 0) { $url = 'http://www.lissyara.su/'; $filename = '1000.htm' }
if(index($filename,':') == -1) { $url = 'http://www.lissyara.su/' . $filename; }
else { $url = $filename; }
# print "-------> $url\t$filename\n";
GetResurse($url, $defaultreferer, $path . $filename);
# Правим $html на локальные адреса
if (index($url,'?') > -1) {
$url =~ s/\?/\\?/;
} # if index
$filename =~ s/\/*//;
$html =~ s/$url/$filename/g;
} # if
} # while
open(fl, "> $realname");
print(fl $html);
close(fl);
while (($url, $localurl) = each(%links)) {
download($path, $url . '&commented=1&print=1', $defaultreferer, $localurl);
} # while
} # if $pos
} else { print "Error: " . $res->status_line . "\n";
}
} # sub download
sub GetResurse()
{
my ($abcurl, $referer, $realname) = @_;
if (not (-e "$realname")) {
my $dirname = substr($realname, 0, rindex($realname, '/'));
if (not (-e "$dirname")) { system("mkdir -p $dirname"); }
if (index($referer, '&')>0) { $referer = substr($referer, 0, index($referer, '&')); }
print "\nDownload resurse -> $abcurl\nReferer -> $referer\nSaved as -> $realname\n";
my $ua = LWP::UserAgent->new;
$ua->agent("Mozilla/8.0"); # Притворимся совместимым браузером !
my $req = HTTP::Request->new(GET => $abcurl);
# $req->header('Accept' => 'text/html');
$req->referer($referer);
# send request
my $res = $ua->request($req, $realname);
if ($res->is_success) {
# print $res->content;
} else {
print "Error: " . $res->status_line . "\n";
}
} # if not file exists
} # sub GetResurse
Вот еслиб эта rss умела выдавать весь список всего шо есть на сайте, было бы совсем чудненькоlissyara писал(а):а ещё есть rss выдающая список последних обновлений статей
Проблема в том что многие найдя вкусный ресурс его СРАЗУ зеркалируют, а уже ПОТОМ читают форум и etc. А вот если написать бааальшими красными буковками вверху страницы, что мол актуальное зеркало качайте с ftp, rapidshare, etc. Может толк и будет....ewgeny07 писал(а):А в чем проблема скрипт повесить на cron с периодичностью раз в сутки например будет обновляться.
а он понимает параметр про число новостей.Urgor писал(а):Вот еслиб эта rss умела выдавать весь список всего шо есть на сайте, было бы совсем чудненькоlissyara писал(а):а ещё есть rss выдающая список последних обновлений статей
А так допишу отдельный скрипт для обновления уже скачанного посредством rss. Однако остается вопрос с каментами...
непонял....Urgor писал(а):Это все круто, но вот раздела "документацая" я там не увиделА иногда надо заглянуть в переведенные доки по эксиму
там где идёт параметр updated - есть.Urgor писал(а):В "карте" у тя есть раздел "документация", а в rrs нету....
Я уже тя спрашивал, вот что ты ответил: http://forum.lissyara.su/viewtopic.php? ... 795#p34528
Ахернеть, и действительноlissyara писал(а):там где идёт параметр updated - есть.Urgor писал(а):В "карте" у тя есть раздел "документация", а в rrs нету....
Я уже тя спрашивал, вот что ты ответил: http://forum.lissyara.su/viewtopic.php? ... 795#p34528
это статьи котоыре последние обновлялись
ээээ... это уже не я качалlissyara писал(а):поставь цивильный реферер - на главную например, а то статистику портишь
Када поглядеть мона будет?Page Under Construction...
sorry...