0

我只需要一个建议。我有一个接受有效 html 并将其保存到文件的程序,我需要一种方法来解析此 html 文件以检索该 html 文件中记录的每个图像。(例如 /foo/bar.jpg)。是否有我可以用来实现此目的的 html 解析库?

4

5 回答 5

3

如果您只需要提到的 .jpg 文件,那么您应该只使用文件阅读器和正则表达式匹配器来寻找 .jpg 文件名之类的字符串,从而获得非常好的结果(例如,很少的误报)。

即使你有一个完美的 HTML 解析器,你也不会得到所有的 .jpg 文件,因为一些文件名可能由你无法解释的 JavaScript 文本组合而成,所以不完美似乎并不重要亏损。

于 2012-08-22T02:54:00.453 回答
1

半个答案:有一个名为Tagsoup的Java解析器,它将“Just Keep On Truckin'”,解析带有尖括号的任何内容,并始终为应用程序生成一组有效的事件。

我之所以提到这一点,是因为我知道这个想法以及至关重要的名称已被其他语言中具有相同意图的图书馆采用。我现在找不到 C 版本,但是如果您尝试以该起点进行一些创造性的搜索,您可能会更幸运(关键是位于解析器之上的应用程序不必关心原始源,但可以假装它是格式良好的 XML,并对它做 XMLish 的事情)。

编辑:哦,还有……我们去Taggle(C++,但可能足够接近,并且该帖子表明从 Java 移植它并不难)

于 2012-08-22T02:48:32.410 回答
1

libXml2 。但这可能要求文件是 XHTML,而不是 HTML。

于 2012-08-21T23:15:46.943 回答
1

Gumbo 解析器,由 Google 提供。它是一个纯 C 语言的 HTML5 解析器,没有依赖项

于 2016-03-25T14:52:23.560 回答
0

我想你可以使用libcurl,我以前用它来解析HTML网站中的常规排泄物,以检索图片和电子邮件。如果我找到代码,我可以为您提供一些提示。

于 2013-11-26T21:53:42.443 回答