我需要从HTML(XHTML有效)页面中获取一些内容。我使用curl抓取页面并将其存储在内存中。
我玩过使用正则表达式和PCRE库的想法,但我只是找不到任何使用它的例子。然后我继续看看HTML解析器,再次没有一个好的选择。我所能找到的只是一个名为HTMLparser的libxml文档模块。
还有其他选择吗?如果没有,那么我已经找到的例子了吗?
答案 0 :(得分:11)
您希望使用HTML整理来执行此操作。 Lib curl页面有一些源代码可以帮助你。穿过dom树的文件。您不需要xml解析器。在格式错误的HTML上不会失败。
答案 1 :(得分:7)
我会使用libhtmltidy +任何xml解析器,例如expat或libxml。取决于你在寻找什么。
答案 2 :(得分:2)
如果要使用C解析XML,那么到目前为止,最好的方法是使用LibXML库。主页位于http://xmlsoft.org/。除了下载外,他们还有明确的code examples,明确地说明如何处理parsing。我知道您可以获得针对Mac和Windows预编译的版本,大多数Linux和BSD发行版已包含它,如果您愿意,可以从源代码构建。
答案 3 :(得分:2)
谷歌最近创建了一个纯C99库,用于解析HTML,HTML5。它易于在任何C程序中使用并积极开发。
答案 4 :(得分:0)
快速C / C ++ HTML 5解析器。使用线程。 https://github.com/lexborisov/myhtml