4

我希望能够从网页中抓取内容,尤其是其中的标签和内容。我已经尝试过 XQuery 和 XPath,但它们似乎不适用于格式错误的 XHTML,而 REGEX 只是一种痛苦。

有没有更好的解决方案。理想情况下,我希望能够请求所有链接并返回一组 URL,或者请求链接的文本并返回包含链接文本的字符串数组,或者请求所有粗体文本等等

4

4 回答 4

4

通过JTidy之类的东西运行 XHTML ,它应该会返回有效的 XML。

于 2009-04-03T15:09:45.833 回答
2

你可能想看看Watij。我只使用了它的 Ruby 表亲 Watir,但有了它,我能够加载一个网页并以您描述的方式请求该页面的所有 URL。

使用起来非常容易——它确实会启动一个网络浏览器,并以漂亮的形式为您提供信息。IE 支持似乎最好,但至少 Watir 也支持 Firefox。

于 2009-04-03T15:10:20.573 回答
2

那天我在使用 JTidy 时遇到了一些问题。我认为这与导致 JTidy 失败的未关闭标签有关。不知道现在修好了没有。我最终使用了TagSoup的包装器,尽管我不记得确切的项目名称。还有HTMLCleaner

于 2009-04-03T15:12:51.100 回答
2

我用过http://htmlparser.sourceforge.net/。它可以解析格式不正确的 html,并且可以很容易地提取数据。

于 2009-04-03T18:53:48.837 回答