Пример написания парсера на примере порно )))

Тема в разделе "PHP", создана пользователем Mendel, 11 мар 2008.

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

    Mendel

    Регистр.:
    27 янв 2008
    Сообщения:
    217
    Симпатии:
    64
    В данной статье я расскажу как можно автоматизировать некоторые действия в интернете. Никаких тем палить не буду.
    Никаких сложных инструментов, супер-бупер знаний и тп.
    Просто описываю как можно достать нужную инфу на реальном примере. Это не учебник, это скорее "лог" хода мыслей... я специально не убирал тупиковые ветки, чтобы было естественнее.

    Контекст:
    ========
    Существует сайт 89.com на котором размещается большое количество коротких видеороликов "эротического" содержания. Ролики можно просматривать по одному с сайта, ппосматривая рекламу рекомендующую просмотреть весь фильм за денежку.

    Задача:
    ======
    Поскольку покупать мы не собираемся у них, а смотреть такие фильмы по одному, переключаясь затруднительно (у когото при этом могут быть заняты руки ГЫГЫ) мы хотим автоматически генерировать плейлист роликов который спокойно просматривать в .. ну пусть будет винампе.

    Решение:
    =======
    Открываем сам сайт.
    Ручками открываем ролики по одному (меню со скролом слева).
    Изучаем структуру URL открывающегося при просмотре ролика.
    Простые наблюдения показывают нам что URL прост как тапки Перейти по ссылке
    Где КАТЕГОРИЯ это название категории - один из нескольких десятков вариантов.
    Список вариантов можно вытащить из html-кода главной страницы. (к слову сказать тамже мы могли и структуру URL увидеть, но я делал так как пишу).
    Ну что делать - открываем для примера Перейти по ссылке смотрим ее исходный код.
    Опа! первый прикол а сама страница во фрейме.
    Поэтому тут мы получаем новый адрес - Перейти по ссылке
    первое что пугает это расширение cfm ... ну пока не будем по этому поводу переживать.
    Пока мы анализируем наш новый URL
    freexxxvideoclip.aebn.net/index.cfm/fa/ClipViewergraphics/tid/11111/console_id/1/genrestub/ похоже что это "постоянная составляющая".
    В данный момент можете поверить мне на слово, но при реальном анализе это необходимо проверить. Проверим на разных категориях и на разных днях...
    amateur - это собственно наша категория, думаю нет смысла объяснять.
    /color/5/genre_id/1/refid/ - очень похожа на очередную константу...
    AEBN006403 - выглядит как переменная зависяшая от дня.
    поскольку AEBN это название их сайта где предлагают купить порно, то очевидно что 006403 это наша новая переменная скорее всего связанная с днем за который показывают ролик.
    Пробуем поиграться с ссылкаи и видем что мы пошли в тупиковую сторону - это очередная тупая разводка/обманка - ссылки работают одинаково и без этого элемента, не говоря уже о том что увеличение/уменьшение цифр не дают нам увидеть киношку за вчера/завтра :)
    Ну да ничего... так всегда бывает.

    Идем далее.
    Сохраним нашу "флешку". это можно сделать любой качалкой... просто обычно браузеры не дают просмотреть код незнакомого им типа документа.
    открываем файл в текстовом редакторе, и видем почтичто обычный html-код, только размазанный по большому куску файла... бегло пролистав его мы находим ссылку на наш видеоклип.
    эта ссылка:
    mms://winmedia.freeclip.aebn.net/FreeClip_v2/free_amateur_0006-225.wmv
    Ну сейчас давайте глянем как это можно было сделать проще:
    Делаем то что надо было сделать с самого начала - щелкаем правой кнопкой по самому клипу, и в свойствах видим тотже адрес :)
    Собственно очевидно что переменной частью будет только amateur_0006-225
    с аматором все ясно... а вот что делать с цифрами?
    ну с цифрами мы просто пробуем разные категории, и видим что 225 у нас константа...
    Пробуем увеличить цифру с 6 на семь и ... о чудо - мы получаем клип который будет завтра.

    В принципе имея всю необходимую аналитическую информацию для того чтобы писать парсер... мы понимаем что писать его нам не надо :)
    мы можем теперь сгенерировать ссылки самостоятельно и без парсера.

    Следующий этап это познакомиться с форматом плейлиста... честно говоря устал я уже от писанины:
    сохраняем в винампе плейлист, открываем его в редакторе, видим что у нас получилось... и по аналогии делаем свой плейлист.

    Ну а тем кто пришел сюда не учиться чемуто а просто ради слова ПОРНО наконец даю готовый пример - плейлист почти на сутки видео :) качаем xxx.rar
    Ну а если вам надо всетаки парсер, раз уж обещал парсер, то ловите и его - adult.rar там все достаточно прозрачно. Но сами понимаете что сама задача обесценилась в результате побочного продукта анализа... и такое бывает.
     

    Вложения:

    • xxx.rar
      Размер файла:
      1,7 КБ
      Просмотров:
      46
    • adult.rar
      Размер файла:
      887 байт
      Просмотров:
      69
    KrasivayaSvo, verissimo, pslava и 3 другим нравится это.
  2. pinox

    pinox Постоялец

    Регистр.:
    14 июн 2007
    Сообщения:
    131
    Симпатии:
    23
    Может, конечно, поучительно. Но я не понял, где
     
  3. Mendel

    Mendel

    Регистр.:
    27 янв 2008
    Сообщения:
    217
    Симпатии:
    64
    В статье описана вся информация необходимая для написания регэкспов. Рассказано откуда мы взяли эту информацию.
    В атаче есть готовый парсер, к вотором собственно парсер занимает 5 строк. Думаю если человек не может разобраться в этих пяти строчках, то он не сможет написать парсер как бы ему не разжевывать. Ну а правила написания регэкспов можно найти в сети и без того. Да банально документации по php вполне для этого достаточно.
    Так что я не понимаю что вы не поняли... )))
     
Статус темы:
Закрыта.