[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