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

Тема в разделе "PHP", создана пользователем LEXAlForpostl, 15 янв 2011.

Модераторы: latteo
  1. LEXAlForpostl

    LEXAlForpostl

    Регистр.:
    21 май 2008
    Сообщения:
    739
    Симпатии:
    226
    Помогите, пожалуйста, написать РНР скрипт, который бы получал сайт, а на выходе выдавал список страниц сайта.
    Для главной - не проблема написать. А для всех страниц - не знаю как.
     
  2. trooll

    trooll PHP кодер

    Регистр.:
    22 дек 2008
    Сообщения:
    503
    Симпатии:
    116
    То что вам необходимо называеться пауком.

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

    Внимание это важно!!! Во время работы необходимо будет вести базу ссылок на которые скрипт уже заходил. Иначе скрипт может парсить сайт вечно. В между прочим в итоге эта база ссылок и станит списком спарсеных урлов. Советую для базы использовать MySQL.
     
  3. propovednik

    propovednik Постоялец

    Регистр.:
    16 май 2008
    Сообщения:
    104
    Симпатии:
    21
    Если сайт не в пару терабайт весом, то рекомендую wget, далее получить список страниц можно простейшими функциями вроде glob. Еще тот велосипед, но написание своего парсера займет достаточно много времени.
     
  4. nagual

    nagual Постоялец

    Регистр.:
    17 фев 2009
    Сообщения:
    65
    Симпатии:
    3
    Ты так будешь годы парсить ... в один поток ... Недавно парсило сайт 4 суток в 10 потоков ...
    Я писал паука для сбора анкоров но на perl ...
     
  5. latteo

    latteo Эффективное использование PHP, MySQL

    Moderator
    Регистр.:
    28 фев 2008
    Сообщения:
    1.451
    Симпатии:
    1.244
    Кто чем ссылки(какими функциями) дергает с загруженной страницы?
    Смотрел несколько сервисов, сравнивал со своим скриптом и найденными Opera получил три разных(до 10%) набора ссылок...
     
  6. DenisK

    DenisK

    Регистр.:
    8 фев 2007
    Сообщения:
    205
    Симпатии:
    13
    есть такой класс

    Spider website 0.1

    http://webscripts.softpedia.com/scriptDownload/Spider-website-Download-51546.html
     
  7. AlikZP

    AlikZP Создатель

    Регистр.:
    31 май 2009
    Сообщения:
    14
    Симпатии:
    3
    Я всегда использовал SimpleHtmlDom.

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