URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID12
Нить номер: 6679
[ Назад ]

Исходное сообщение
"как создать файл статистики"

Отправлено coty , 27-Июл-11 10:14 
Взят был лог файл апача,перекопирован в контентную папку вебсервера под именем index.html и нужно создать файл на языке perl, который бы находил iP адреса в index.html и выдавал их на новой html страничке как сайт статистики! Как сделать парсинг этого файла index.html на perl ?

Содержание

Сообщения в этом обсуждении
"как создать файл статистики"
Отправлено erera22 , 27-Июл-11 13:17 
>  Взят был лог файл апача,перекопирован в контентную папку вебсервера под именем
> index.html и нужно создать файл на языке perl, который бы находил
> iP адреса в index.html и выдавал их на новой html страничке
> как сайт статистики! Как сделать парсинг этого файла index.html на perl
> ?

Статистики чего? Количества вхождений IP адреса в лог апача?
На баш: awk '{print $1}' index.html | sort | uniq -c > res.html
На перл:
#!/usr/bin/perl -w
use strict;

open (HANDLE, "< access_log");
my @arr = <HANDLE>;
close HANDLE;

my %hash = ();
my $hash = \%hash;

foreach my $str (@arr) {
   my ($ipaddr) = (split /\s/, $str)[0];
   if (!exists $hash{ $ipaddr }) {
      $hash{ $ipaddr } = 1;
   } else {
      $hash{ $ipaddr } += 1;
   }
}

open (HANDLE, "> res.htm");
my $head = "<html><body><table>\n";
print HANDLE $head;
foreach my $ipaddr (sort keys %hash) {
   print HANDLE "<tr><td>$ipaddr</td><td>$hash{ $ipaddr }</td></tr>\n";
}
my $tail = "</table></body></html>\n";
print HANDLE $tail;
close HANDLE;

А вообще используйте awstats. Проше и "красивше".


"как создать файл статистики"
Отправлено coty , 27-Июл-11 14:53 
спасибо!


"как создать файл статистики"
Отправлено coty , 27-Июл-11 15:47 
создать страничку статистики - список IP адресов из файла контентной папки, файл index.html, извлечь и поместить в новую страничку,где IP будут как гиперссылочки ,нажимая на которые выдавалась бы по каждому IP страничка со списком посещенных им UDP-адресов.


"как создать файл статистики"
Отправлено coty , 27-Июл-11 15:59 
sorry, http а не UDP