[Moscow.pm] Как парсить сайты?

Alexey Shrub worldmind на mail.ru
Чт Дек 19 06:14:34 PST 2013


 tidy вроде помогал


Четверг, 19 декабря 2013, 15:24 +02:00 от Oleg Kostyuk <cub.uanic на gmail.com>:
>А как вы боретесь с тем, что далеко не все сайты выдают валидные страницы?
>Парсинг ломается, селекторы не работают...
>Бежать обратно в каменный век к регуляркам?..
>
>
>19 декабря 2013 г., 14:37 пользователь Илья Винокуров  < ilvin на mail.ru > написал:
>>
>>А еще селекторы можно подсмотреть в FireBug'е ...
>>
>>
>>Четверг, 19 декабря 2013, 16:20 +04:00 от Foxcool < foxcool333 на gmail.com >:
>>
>>>19.12.2013 15:53, Харпалёв Иван пишет:
>>>>Спасибо! Очень много ссылок в тему!
>>>>Особенно понравился вариант с  Mojo, поскольку, кажется,
          что материал "для освоения" компактнее.
>>>>
>>>>Как понимаю, для того, чтобы нормально разбирать страницы,
          нужно освоиться с DOM, всякими селекторами и т.д.
>>>>Такого бэкграунда мало(
>>>>Как его почерпнуть? Может есть туториал из пары уроков, где
          парсинг и ликбезом?)
>>>>
>>>>Встал на путь истинный, спасибо!
>>>>
>>>>
>>>>18 декабря 2013 г., 13:21 пользователь
          Анатолий Шарифулин  < sharifulin на gmail.com > написал:
>>>>>Да, на тестах сразу видно, когда парсер
              ломается, я иногда делаю так :)
>>>>>
>>>>>
>>>>>2013/12/18 Eugene Toropov  < eugene.toropov на gmail.com >
>>>>>>Если
                      там реально несколько десятков страниц и смысл в
                      мониторинге, то можно вообще Test::Mojo и
                      проходить последовательно. Код выглядит как-то
                      так:
>>>>>>
>>>>>>$t->get_ok($t->tx->res->headers->location
                      )->status_is('200')->element_exists('td[style="border-right:1px
                      solid #A2C1D9;"]');
>>>>>>
>>>>>>$t->post_ok( $url => form => \%pay_form
                      )->status_is(302)->header_like(Location
                      => qr|^ http://partner.a1pay.ru/a1lite/selectType| );
>>>>>>
>>>>>>Евгений
>>>>>>
>>>>>>On Dec 18, 2013, at 12:59 PM, Ivan Petrov
                          wrote:
>>>>>>
>>>>>>>> Используйте Mojo::UserAgent с
                          Mojo::DOM и Mojo::JSON, и забудьте про все
                          ссылки
>>>>>>>
>>>>>>> если на производительность совсем уж
                          наплевать, то можно и Mojo::DOM с
>>>>>>> Mojo::UserAgent
>>>>>>>
>>>>>>> --
>>>>>>> Moscow.pm mailing list
>>>>>>>  moscow-pm на pm.org |  http://moscow.pm.org
>>>>>>
>>>>>>--
>>>>>>Moscow.pm mailing list
>>>>>>moscow-pm на pm.org |  http://moscow.pm.org
>>>>>
>>>>>
>>>>>
>>>>>-- 
>>>>>С уважением,
>>>>> Анатолий Шарифулин.
>>>>>--
>>>>>Moscow.pm mailing list
>>>>>moscow-pm на pm.org |  http://moscow.pm.org
>>>>>
>>>>
>>>>
>>>>
>>>
>>>
>>>Я в свое время неплохо освоился с Web::Scraper. Это вроде не такое
    тормозное решение, как с моджо. Однако понадобится работать  с
    селекторами. А селекторы - несложная тема. Берем и смотрим от той же
    моджи доку:  http://mojolicio.us/perldoc/Mojo/DOM/CSS
>>>И по таким же селекторам можно ловить содержимое вебскрапером.
    Правда там необычный (вроде декларативный) интерфейс и поначалу
    немного ломает мозг, но как только вкуриваешь, то сразу же парсинг
    решулярками или еще какой изврат больше не потянет к себе. Ну а
    селекторы по теблице берешь и копируешь, какой надо. Тут достаточно
    иметь представление об html и css
>>>
>>>-- 
>>>http://foxcool.ru
>>>foxcool на jabber.ru
>>>-- 
>>>Moscow.pm mailing list
>>>moscow-pm на pm.org |  http://moscow.pm.org
>>
>>
>>-- 
>>Илья Винокуров
>>
>>--
>>Moscow.pm mailing list
>>moscow-pm на pm.org |  http://moscow.pm.org
>>
>
>
>
>-- 
>Sincerely yours,
>Oleg Kostyuk (CUB-UANIC)
>-- 
>Moscow.pm mailing list
>moscow-pm на pm.org |  http://moscow.pm.org


-- 
Alexey Shrub
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20131219/9e122d9e/attachment-0001.html>


Подробная информация о списке рассылки Moscow-pm