Данная библиотека предоставляет возможность обхода на сайте
всех ссылок. Таким образом, используя эту библиотеку Вы сможете проанализировать
рекурсивно весь сайт.
Основные преимущества:
Простота в использовании Отказоустойчивость Возможность ускорения
обхода ссылок путем размножения процессов
Требования:
Perl, MySql Библиотеки DBI, DBD::MySql, LWP::Simple, LWP::UserAgent,
HTML::LinkExtor
Как видно из требований, библиотека WebWalker работает с базой данных MySQL,
это связано с тем, что библиотека хранит все необходимые данные для обхода сайта
в таблице базы данных.
Пример использования:
use WebWalker;
%params = ( -dbName => 'WebWalk', -dbHost =>
'localhost', -dbLogin => '', -dbPasswd => '', -dbTable =>
'links', -ContentProcess => \&ContentProcess, -LinkProcess =>
\&LinkProcess, -ProxyServer =>
'http://192.168.50.75:3128', -Timeout => 300, -Proxy =>
'yes', -URL => 'http://volph.appua.com' );
Init(%params);
while(1) { Process(); }
sub ContentProcess {
print @_[0];
}
sub LinkProcess {
print @_[0]."\n"; return @_[0]; }
Как видно из примера, необходимо инициализировать несколько свойств и
событий, а затем циклически вызывать процедуру Process().
Рассмотрим подробнее свойства и события:
-dbName - название базы данных (БД) -dbHost - ip-адрес расположения БД
-dbLogin - логин БД -dbPasswd - пароль БД -dbTable - таблица БД, в
которой библиотека будет хранить свои данные, для каждого сайта необходимо
указывать разные имена -ContentProcess - указатель на событие (процедуру),
которое вызывается при получении контекста HTML-страницы, в качестве параметра
данному событию передается собственно сам контекст страницы -LinkProcess -
указатель на событие (функцию), которое вызывается при нахождении в
HTML-странице URL-адреса в теге <a>. В качестве параметра, передается
значение атрибута href тега <a>. Если событие возвращает пустое значение,
значит данная ссылка не будет обрабатывать библиотекой для обхода, иначе
необходимо возвращать правильный HTTP- адрес -ProxyServer - адрес
прокси-сервера в виде http://address:port -Timeout - таймаут в секундах
-Proxy - использование прокси-сервера (yes/no) -URL - HTTP-адрес сайта,
который необходимо рекурсивно обойти
СОВЕТ Для ускорения процесса обхода всех ссылок на сайте, необходимо
запустить параллельно несколько скриптов.
Если у Вас возникли какие то вопросы или предложения, пишите по адресу
volph@appua.com. По вопросам приобретения данной библиотеки обращайтесь также по
адресу volph@appua.com, оплата символическая или возможно Вы получите ее
бесплатно. |