使用C解析html

时间:2009-10-06 20:20:04

标签: html c regex parsing

我需要从HTML(XHTML有效)页面中获取一些内容。我使用curl抓取页面并将其存储在内存中。

我玩过使用正则表达式和PCRE库的想法,但我只是找不到任何使用它的例子。然后我继续看看HTML解析器,再次没有一个好的选择。我所能找到的只是一个名为HTMLparser的libxml文档模块。

还有其他选择吗?如果没有,那么我已经找到的例子了吗?

5 个答案:

答案 0 :(得分:11)

您希望使用HTML整理来执行此操作。 Lib curl页面有一些源代码可以帮助你。穿过dom树的文件。您不需要xml解析器。在格式错误的HTML上不会失败。

http://curl.haxx.se/libcurl/c/htmltidy.html

答案 1 :(得分:7)

我会使用libhtmltidy +任何xml解析器,例如expatlibxml。取决于你在寻找什么。

答案 2 :(得分:2)

如果要使用C解析XML,那么到目前为止,最好的方法是使用LibXML库。主页位于http://xmlsoft.org/。除了下载外,他们还有明确的code examples,明确地说明如何处理parsing。我知道您可以获得针对Mac和Windows预编译的版本,大多数Linux和BSD发行版已包含它,如果您愿意,可以从源代码构建。

答案 3 :(得分:2)

谷歌最近创建了一个纯C99库,用于解析HTML,HTML5。它易于在任何C程序中使用并积极开发。

https://github.com/google/gumbo-parser

答案 4 :(得分:0)

快速C / C ++ HTML 5解析器。使用线程。 https://github.com/lexborisov/myhtml