Я XPath-ом парсил html, правда медленновато такой способ работает. Учить селекторы можно на w3school.
19 декабря 2013 г., 18:14 пользователь Alexey Shrub <[email protected]>написал: > tidy вроде помогал > > > Четверг, 19 декабря 2013, 15:24 +02:00 от Oleg Kostyuk < > [email protected]>: > > А как вы боретесь с тем, что далеко не все сайты выдают валидные > страницы? > Парсинг ломается, селекторы не работают... > Бежать обратно в каменный век к регуляркам?.. > > > 19 декабря 2013 г., 14:37 пользователь Илья Винокуров > <[email protected]<https://e.mail.ru/compose/?mailto=mailto%[email protected]> > > написал: > >> >> А еще селекторы можно подсмотреть в FireBug'е ... >> >> >> Четверг, 19 декабря 2013, 16:20 +04:00 от Foxcool >> <[email protected]<https://e.mail.ru/compose/?mailto=mailto%[email protected]> >> >: >> >> 19.12.2013 15:53, Харпалёв Иван пишет: >> >> Спасибо! Очень много ссылок в тему! >> Особенно понравился вариант с Mojo, поскольку, кажется, что материал >> "для освоения" компактнее. >> >> Как понимаю, для того, чтобы нормально разбирать страницы, нужно >> освоиться с DOM, всякими селекторами и т.д. >> Такого бэкграунда мало( >> Как его почерпнуть? Может есть туториал из пары уроков, где парсинг и >> ликбезом?) >> >> Встал на путь истинный, спасибо! >> >> >> 18 декабря 2013 г., 13:21 пользователь Анатолий Шарифулин < >> [email protected]<https://e.mail.ru/compose/?mailto=mailto%[email protected]> >> > написал: >> >>> Да, на тестах сразу видно, когда парсер ломается, я иногда делаю так :) >>> >>> >>> 2013/12/18 Eugene Toropov >>> <[email protected]<https://e.mail.ru/compose/?mailto=mailto%[email protected]> >>> > >>> >>>> Если там реально несколько десятков страниц и смысл в мониторинге, то >>>> можно вообще 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 >>>> > [email protected]<https://e.mail.ru/compose/?mailto=mailto%3amoscow%[email protected]>| >>>> http://moscow.pm.org >>>> >>>> -- >>>> Moscow.pm mailing list >>>> [email protected]<https://e.mail.ru/compose/?mailto=mailto%3amoscow%[email protected]>| >>>> http://moscow.pm.org >>>> >>> >>> >>> >>> -- >>> С уважением, >>> Анатолий Шарифулин. >>> >>> -- >>> Moscow.pm mailing list >>> [email protected]<https://e.mail.ru/compose/?mailto=mailto%3amoscow%[email protected]>| >>> http://moscow.pm.org >>> >>> >> >> >> >> >> Я в свое время неплохо освоился с Web::Scraper. Это вроде не такое >> тормозное решение, как с моджо. Однако понадобится работать с селекторами. >> А селекторы - несложная тема. Берем и смотрим от той же моджи доку: >> http://mojolicio.us/perldoc/Mojo/DOM/CSS >> И по таким же селекторам можно ловить содержимое вебскрапером. Правда там >> необычный (вроде декларативный) интерфейс и поначалу немного ломает мозг, >> но как только вкуриваешь, то сразу же парсинг решулярками или еще какой >> изврат больше не потянет к себе. Ну а селекторы по теблице берешь и >> копируешь, какой надо. Тут достаточно иметь представление об html и css >> >> -- http://[email protected] >> <https://e.mail.ru/compose/?mailto=mailto%[email protected]> >> >> -- >> Moscow.pm mailing list >> [email protected]<https://e.mail.ru/sentmsg?compose&To=moscow%[email protected]>| >> http://moscow.pm.org >> >> >> >> -- >> Илья Винокуров >> >> -- >> Moscow.pm mailing list >> [email protected]<https://e.mail.ru/compose/?mailto=mailto%3amoscow%[email protected]>| >> http://moscow.pm.org >> >> > > > -- > Sincerely yours, > Oleg Kostyuk (CUB-UANIC) > -- > Moscow.pm mailing list > [email protected] <https://e.mail.ru/sentmsg?compose&To=moscow%[email protected]>| > http://moscow.pm.org > > > > -- > Alexey Shrub > > -- > Moscow.pm mailing list > [email protected] | http://moscow.pm.org > >
-- Moscow.pm mailing list [email protected] | http://moscow.pm.org
