Из рубрики: статьи про PHP, HTML, DHTML, Perl, CGI, Java, JavaScript, CGI, MySQL.
Основные преимущества. Простота использования. Требования: Perl, MySql. Библиотеки DBI, DBD MySql, LWP Simple, LWP UserAgent, HTML LinkExtor. Свойства и события.
Данная библиотека предоставляет возможность обхода на сайте всех ссылок. Таким образом, используя эту библиотеку, вы сможете проанализировать рекурсивно весь сайт.
Основные преимущества. Простота использования. Требования: Perl, MySql. Библиотеки DBI, DBD MySql, LWP Simple, LWP UserAgent, HTML LinkExtor. Свойства и события.
Данная библиотека предоставляет возможность обхода на сайте всех ссылок. Таким образом, используя эту библиотеку, вы сможете проанализировать рекурсивно весь сайт.
Основные преимущества:
- Простота в использовании
- Отказоустойчивость
- Возможность ускорения обхода ссылок путем размножения процессов
Требования:
- 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-адреса в теге. В качестве параметра, передается значение атрибута href тега . Если событие возвращает пустое значение, значит данная ссылка не будет обрабатывать библиотекой для обхода, иначе необходимо возвращать правильный HTTP-адрес
-ProxyServer - адрес прокси-сервера в виде http://address:port
-Timeout - таймаут в секундах
-Proxy - использование прокси-сервера (yes/no)
-URL - HTTP-адрес сайта, который необходимо рекурсивно обойти
СОВЕТ
Для ускорения процесса обхода всех ссылок на сайте, необходимо запустить параллельно несколько скриптов.
Автор: Александр Кулик
Источник: volph.appua.com
| < Предыдущая | Следующая > |
|---|