[Moscow.pm] Работа с Web::Scraper

Foxcool foxcool333 на gmail.com
Ср Ноя 9 05:09:29 PST 2011


On 11/09/2011 05:05 PM, Nikolay Mishin wrote:
> А зачем такие сложности, можно, например HTML::TableExtract
> использовать для того, чтобы вытащить любую таблицу
>
> https://gist.github.com/1351359
>
>
> 09.11.2011, 15:34, "Alexey Shrub"<worldmind на mail.ru>:
>> On Ср., 2011-11-09 at 13:36 +0400, Foxcool wrote:
>>
>>>   Заранее извиняюсь, возможно, за тривиальные вопросы, т.к. я из редкого
>>>   нынче вида Перл-джуниоров.
>>>   Есть интересный модуль Web::Scraper, документацию которого я не нахожу
>>>   избыточной, т.к. не могу разобраться, как его "натравливать" на теги.
>>>   Есть некая страница, которая полна таблиц, идущих друг за другом, разных
>>>   и т.д. Первая проблема, с которой я столкнулся: мне нужны определенные
>>>   таблицы. И не с определенным id или class, а с значением другого атрибута.
>>>
>>>   <tablewidth="100%"cellspacing="0"cellpadding="3"border="0">
>>>   <tablewidth="100%"cellspacing="2"cellpadding="1">
>>>
>>>   Например, cellspacing="2", или cellpadding="1", или даже оба. Как мне
>>>   указать это скраперу? Кстати, посоветуете другой инструмент, буду
>>>   непротив. С небольшим модулем, который парсит регулярками разобрался
>>>   быстро и доволен его работой, но хотелось бы разобраться с каким-нибудь
>>>   большим и стабильным инструментом для того, чтобы использовать его в
>>>   чрезмерно важных задачах.
>> По мне так самый удобный (правда не самый быстрый), это XPath, только
>> первым делом html нужно привести к xhtml, но это легко сделать с помощью
>> утилиты tidy
>> Тут есть пример
>> https://github.com/worldmind/simple-livejournal-backuper
>>
>> --
>> Moscow.pm mailing list
>> moscow-pm на pm.org | http://moscow.pm.org
> --
> Nikolay Mishin
Спасибо, присмотрюсь. С DOM у меня возникала проблема, что 
многоуровневый хеш имел слишком длинную и запутанную структуру в т.ч. с 
циклическими ссылками, если я хотел работать непосредственно с деревом, 
как например если применять на XML XML::LibXML::Simple. То есть работать 
с деревом, как с многоуровневым хешем удобно, если это хороший 
структурированный XML. А вот если это мутный HTML, возникают проблемы.


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