ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.

02.07.2008, 15:20
|
|
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме: 3660186
Репутация:
905
|
|
Код:
open my $FILE, '<', clients.txt or die "Open error: $!\n";
my @f = <$FILE>;
close $FILE;
foreach $name(@f) {...}
или
Код:
open my $FILE, '<', clients.txt or die "Open error: $!\n";
while (<$FILE>) {...}
close $FILE;
без разницы, как хочешь. Второй вариант предпочтительнее
Последний раз редактировалось krypt3r; 02.07.2008 в 15:29..
|
|
|

02.07.2008, 16:03
|
|
Постоянный
Регистрация: 15.06.2007
Сообщений: 527
Провел на форуме: 1734541
Репутация:
214
|
|
Спс за помощь появилась еще одна поблема теперь скрипт сохраняет инфу в файл не в той кодировке (
и еще надо както обрезать первые 9 строк чтоб не выводились ))
Последний раз редактировалось svesve; 02.07.2008 в 16:11..
|
|
|

02.07.2008, 16:47
|
|
Постоянный
Регистрация: 15.06.2007
Сообщений: 527
Провел на форуме: 1734541
Репутация:
214
|
|
Написал скриптик который из файла коиентов выводит по ним стату
но не пойму как убрать эти строки из файла в который выводится.
HTTP/1.1 200 OK
Connection: close
Date: Wed, 02 Jul 2008 12:42:54 GMT
Server: Apache
Content-Type: text/plain; charset=KOI8-R
Client-Date: Wed, 02 Jul 2008 12:39:06 GMT
Client-Peer: 217.119.16.91:80
Client-Response-Num: 1
Client-Transfer-Encoding: chunked
как от нх извабиться? и можно ли сменить кодировку когда выводим в файл?
вот скрипт
#!/usr/bin/perl
use strict;
use LWP::UserAgent;
my $ua = LWP::UserAgent->new;
open my $FILE, '<', 'clients.txt' or die "Open error: $!\n";
my @f = <$FILE>;
chomp @f;
close $FILE;
foreach my $name(@f) {
my $req = $ua->get("http://site/cgi-bin/trstat.pl?code=$name&month=2008-06")->as_string;
open OUT, '>',$name.'.txt';
print OUT $req;
close OUT;
}
Последний раз редактировалось svesve; 02.07.2008 в 16:56..
|
|
|

02.07.2008, 17:01
|
|
Reservists Of Antichat - Level 6
Регистрация: 23.08.2007
Сообщений: 1,237
Провел на форуме: 18127311
Репутация:
1676
|
|
Насчет кодировки
use Encode qw/encode decode/;
потом
print FILE decode('KOI8-R',$req);
А чтобы вытаскивать только то что тебе нужно используй регулярки
|
|
|

02.07.2008, 20:41
|
|
Banned
Регистрация: 11.08.2006
Сообщений: 1,522
Провел на форуме: 5128756
Репутация:
2032
|
|
content вместо as_string. в чужих скриптах такого не было? 
|
|
|

03.07.2008, 07:25
|
|
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме: 3660186
Репутация:
905
|
|
svesve, попробуй без хедеров так:
Код:
#!/usr/bin/perl
use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request;
my $ua = LWP::UserAgent->new;
open my $FILE, '<', 'clients.txt' or die "Open error: $!\n";
my @f = <$FILE>;
chomp @f;
close $FILE;
my ($req, $res, $content, $OUT);
my $url = 'http://site/cgi-bin/trstat.pl';
foreach my $name(@f) {
$req = HTTP::Request->new (GET => $url . "?code=$name&month=2008-06");
$req->content_type ('text/html');
$res = $ua->request ($req);
die "Can't get url $url: " . $res->status_line . "\n" unless $res->is_success;
$content = $res->content;
# тут, если нужно, производится парсинг полученного результата
open $OUT, '>', $name . '.txt';
print $OUT $content;
close $OUT;
}
Последний раз редактировалось krypt3r; 03.07.2008 в 10:11..
|
|
|

03.07.2008, 09:15
|
|
Постоянный
Регистрация: 15.06.2007
Сообщений: 527
Провел на форуме: 1734541
Репутация:
214
|
|
Спасибо за помощь! но так скрипт не работает ))
|
|
|

03.07.2008, 10:10
|
|
Познавший АНТИЧАТ
Регистрация: 27.04.2007
Сообщений: 1,044
Провел на форуме: 3660186
Репутация:
905
|
|
svesve, я поправил пост, смотри код
|
|
|

03.07.2008, 10:45
|
|
Постоянный
Регистрация: 15.06.2007
Сообщений: 527
Провел на форуме: 1734541
Репутация:
214
|
|
во теперь робит все ) спс
единственно когда кодировку в коцне перевожу ругается на что то(Wide character in print at test.pl line 24.) но это фигня главное работает ))
|
|
|

03.07.2008, 12:50
|
|
Постоянный
Регистрация: 15.06.2007
Сообщений: 527
Провел на форуме: 1734541
Репутация:
214
|
|
Теперь такой вопрос я хочу передать через форму параметр скрипту тобишь чтоб каждый раз не лазить менять date хотелось бы его передать через форму
подскажите как будет это выглядеть?
#!/usr/bin/perl
use strict;
use warnings;
use LWP::UserAgent;
use HTTP::Request;
use Encode qw/encode decode/;
my $ua = LWP::UserAgent->new;
open my $FILE, '<', 'clients.txt' or die "Open error: $!\n";
my @f = <$FILE>;
chomp @f;
close $FILE;
my ($req, $res, $content, $OUT);
my $url = 'http://site/cgi-bin/trstat.pl';
my $date= 123;# задаем тут дату
foreach my $name(@f) {
$req = HTTP::Request->new (GET => $url . "?code=$name&month=$date");
$req->content_type ('text/html');
$res = $ua->request ($req);
die "Can't get url $url: " . $res->status_line . "\n" unless $res->is_success;
$content = $res->content;
open $OUT, '>', $name . '.txt';
print $OUT decode('KOI8-U',$content);
close $OUT;
}
Последний раз редактировалось svesve; 03.07.2008 в 16:51..
|
|
|
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|