Грабер

Тема в разделе "PHP", создана пользователем Acidrayne, 27 окт 2009.

Статус темы:
Закрыта.
Модераторы: latteo
  1. Acidrayne

    Acidrayne

    Регистр.:
    30 сен 2007
    Сообщения:
    296
    Симпатии:
    20
    Добрыйдень! Пытаюсь написать грабер, суть его такова:

    Пользователь заходит на сайт авторизируется на нем, переходит в нужный раздел грабит контент(в том числе и скачивает файлы) и потом все это дело добавляет в базу!

    Был бы очень благодарен если бы кто-либо накбросал каркас для этого дела!Я не имею ввиду написать за меня его, а хотябы разъяснения что и зачем надо делать!
     
  2. satih

    satih

    Регистр.:
    19 сен 2008
    Сообщения:
    429
    Симпатии:
    710
    Сейчас как раз курю php и curl, короче грабить им можно на ура, авторизация и переход на нужную страницу это http запросы, составить их можно если сниффером посмотреть какие данные требует сайт. Контент который сграбишь нужно распарсить регулярками, ну и записать в базу..
    Процесс таков - на сайте заходишь браузером на те страницы что будет заходить скрипт и сниффером записываешь http запросы и ответы. Их потом повторишь с curl-ом, т.е. сделаешь имитацию браузера. В ответе http есть содержимое страницы, т.е. страницу получили. Распарсить регулярными выражениями с php, т.е. вытащить нужные части страницы и ссылки (скачать файл по ссылке то же php), и занести в базу средствами того же php.
     
  3. rex1963

    rex1963

    Регистр.:
    19 фев 2007
    Сообщения:
    228
    Симпатии:
    47
    С помощью curl устанавливаешь соединение и проводишь авторизацию, записываешь сессию, затем по GET запросу заходишь на нужную страницу. Как правило - на сайтах структура вывода характерная. Находишь отправные точки. Потом получаешь контент, и регуляркой вырезаешь что тебе надо.
    Только ради примера
    PHP:
    <?
    $file=file_get_contents("http://www.samsung.ru/press/news/common/22419.html"); 
    $GrabStart "<h2 class=\"article_title\">"// от куда грабим
            
    $GrabEnd "<strong>Файлы для скачивания:</strong>"// до куда грабим
            
    $GrabData eregi("$GrabStart(.*)$GrabEnd"$file$DataPrint);
            
    $rezult $DataPrint[1];

    $textstrip_tags($rezult,'<p>');

    echo 
    $text
    ?>
    рисунки вырезаешь регуляркой, типа
    PHP:
    #(<img\b[^>]*?[\s\'"]src\s*=\s*[\'"]?)([^\s>\'"]+)#
    и через copy сохраняешь. Ну а с базой особых проблем быть не должно.
     
Статус темы:
Закрыта.