[Moscow.pm] Как парсить сайты?
Alexey Shrub
worldmind на mail.ru
Пт Дек 20 00:46:37 PST 2013
Ну так сначала tidy приводит к xml, а потом xpath
Четверг, 19 декабря 2013, 19:06 +04:00 от Андрей П. Ковбович<akovbovich на gmail.com>:
>Я XPath-ом парсил html, правда медленновато такой способ работает. Учить селекторы можно на w3school.
>
>
>19 декабря 2013 г., 18:14 пользователь Alexey Shrub < worldmind на mail.ru > написал:
>>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
>>
>>--
>>Moscow.pm mailing list
>>moscow-pm на pm.org | http://moscow.pm.org
>>
>
>--
>Moscow.pm mailing list
>moscow-pm на pm.org | http://moscow.pm.org
--
Alexey Shrub
----------- следущая часть -----------
Вложение в формате HTML было извлечено…
URL: <http://mail.pm.org/pipermail/moscow-pm/attachments/20131220/094e8564/attachment.html>
Подробная информация о списке рассылки Moscow-pm