Сборщик урлов

LEXAlForpostl

Мой дом здесь!
Регистрация
21 Май 2008
Сообщения
766
Реакции
228
Помогите, пожалуйста, написать РНР скрипт, который бы получал сайт, а на выходе выдавал список страниц сайта.
Для главной - не проблема написать. А для всех страниц - не знаю как.
 
То что вам необходимо называеться пауком.

Объясню только концепцию работы скрипта:
1) Скрипт получает корневой урл, относительно него в дальнейшем и будет проводиться весь анализ действий скрипта.
2) Скрипт заходит на корневой урл и парсит все внутрение урлы имеющиеся на странице.
3) После прохода корнегового урла, у нас сформируеться список следующих страниц для парсинг. Дальше все просто, идем по полученным ссылкам и собираем внутрение следующие урлы, при этом необходимо будет вести базу ссылок на которые скрипт уже заходил и естественно чекать новые ссылки на наличие в базе.

Внимание это важно!!! Во время работы необходимо будет вести базу ссылок на которые скрипт уже заходил. Иначе скрипт может парсить сайт вечно. В между прочим в итоге эта база ссылок и станит списком спарсеных урлов. Советую для базы использовать MySQL.
 
Если сайт не в пару терабайт весом, то рекомендую wget, далее получить список страниц можно простейшими функциями вроде glob. Еще тот велосипед, но написание своего парсера займет достаточно много времени.
 
Если сайт не в пару терабайт весом, то рекомендую wget, далее получить список страниц можно простейшими функциями вроде glob. Еще тот велосипед, но написание своего парсера займет достаточно много времени.
Ты так будешь годы парсить ... в один поток ... Недавно парсило сайт 4 суток в 10 потоков ...
Я писал паука для сбора анкоров но на perl ...
 
Кто чем ссылки(какими функциями) дергает с загруженной страницы?
Смотрел несколько сервисов, сравнивал со своим скриптом и найденными Opera получил три разных(до 10%) набора ссылок...
 
  • Заблокирован
  • #6
есть такой класс

Spider website 0.1

Скрытое содержимое доступно для зарегистрированных пользователей!
 
Я всегда использовал .

Тяжелая библиотека, но понятная.
Если кто подскажет аналог, чтоб без использования регулярок - буду благодарен.
 
Назад
Сверху