URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 6897
[ Назад ]

Исходное сообщение
"какую либу выбрать для парсинга html:С++/С"

Отправлено Arifolth , 31-Окт-07 12:20 
всем привет!

встала необходимость написать кусок кода который будет парсить очень много HTMLя (конкретно - разных web страниц). он должен работать (желательно) очень быстро. HTML может быть иногда будет кривой, неправильный и т. д. главное скорость и надёжность парсера. очень желательно что бы он был на С++ (на крайняк С тоже подойдёт)
какую библиотечку выбрать?

я знаю что в некоторых больших проектах использовался libxml2, но он написан на С. это то к чему я склоняюсь.
есть libxml++ -врапер для libxml2 о ней я ничего не занаю. счас пойду смотреть код.
xerces c++ кажется бы подошёл но его может плющить если страница не соответствует спецификации XML. в доках так написано.
HTML Tidy Library ? хмммм
кто что может ещё предлдожить? варианты? мысли?
мне интересно что скажут местные мозги :-)

заранее благодарен за ответы!
_________________
WBR, Arifolth


Содержание

Сообщения в этом обсуждении
"какую либу выбрать для парсинга html:С++/С"
Отправлено vic , 31-Окт-07 13:27 
firefox (gesko) ?

=)


"какую либу выбрать для парсинга html:С++/С"
Отправлено angra , 31-Окт-07 15:15 
Парсить с какой целью? что вы хотите получить как результат парсинга?


"какую либу выбрать для парсинга html:С++/С"
Отправлено Arifolth , 31-Окт-07 15:53 
>Парсить с какой целью? что вы хотите получить как результат парсинга?

ссылки которые будут в страницах


"какую либу выбрать для парсинга html:С++/С"
Отправлено AMDmi3 , 31-Окт-07 18:30 
>>Парсить с какой целью? что вы хотите получить как результат парсинга?
>ссылки которые будут в страницах

Тогда не легче ли использовать регулярные выражения, например pcre?
Кривость документа будет побоку и, скорее всего, будет работать быстрее.


"какую либу выбрать для парсинга html:С++/С"
Отправлено angra , 01-Ноя-07 06:42 
>ссылки которые будут в страницах

Так я и думал. Правильно вам посоветовали - используйте pcre. Это будет на несколько порядков быстрее и позволит вам искать ссылки даже в js коде, что не позволяет парсинг HTML. Примеры регексов для поиска ссылок можно найти гуглом, а можно изучить регексы и сделать самому.



"какую либу выбрать для парсинга html:С++/С"
Отправлено Mike , 06-Мрт-08 11:59 
>>ссылки которые будут в страницах
>
>Так я и думал. Правильно вам посоветовали - используйте pcre. Это будет
>на несколько порядков быстрее и позволит вам искать ссылки даже в
>js коде, что не позволяет парсинг HTML. Примеры регексов для поиска
>ссылок можно найти гуглом, а можно изучить регексы и сделать самому.
>

Xerces-c