1

所以我想用 C 创建一个网络爬虫。几乎没有任何库支持这个。
我可以使用libtidy将 HTML 转换为 XHTML,并使用libcurl获取 HTML 文件(它有不错的文档)。

我的问题是解析 HTML 文件并获取其中存在的所有链接。我知道有libxml2 ,但它非常难以理解,因为它的 API 没有好的文档。

我什至应该用 C 来做这件事,还是用另一种语言,比如 Java?或者libxml2有什么好的替代品吗?

4

1 回答 1

1

解析 HTML 基本上只需要字符串操作。

但是如果没有 HTML 或 XML(如果是 XHTML)解析器,就很难做到。

至于问题的第二部分,我不会为此类任务选择 C,因为即使是基本的字符串操作也比许多其他原生支持它们的语言复杂得多。

我会选择一种脚本语言,例如 Python、JavaScript、PHP ......

您将调用 curl 作为命令行工具,而不是使用 libcurl。

顺便说一句:libcurl 文档非常好(在我看来)。

于 2013-01-19T17:12:54.117 回答