我需要提供一个基本网址(例如http://www.wired.com
),并且需要在整个网站上显示输出一系列网页(在基本网址之外)。有没有可以解决这个问题的图书馆?
感谢。
答案 0 :(得分:5)
我曾多次使用Web Harvest
,这对网页抓取非常有用。
Web-Harvest是开源Web数据 用Java编写的提取工具。它 提供了一种收集所需Web的方法 页面并从中提取有用的数据 他们。为了做到这一点,它 利用成熟的技术 和text / xml的技术 操作,如XSLT,XQuery和 常用表达。网络丰收 主要关注基于HTML / XML的Web 仍占绝大多数的网站 的Web内容。另一方面, 它可以很容易地补充 自定义Java库以便 增强其提取能力。
或者,您可以使用JTidy
等工具滚动自己的网络抓取工具,首先将HTML文档转换为XHTML,然后使用XPath
处理所需的信息。例如,一个非常天真的XPath表达式,用于从http://www.wired.com
中提取所有超链接,类似于//a[contains(@href,'wired')]/@href
。您可以在此answer中找到此方法的一些示例代码,以查找类似的问题。
答案 1 :(得分:2)
'简单'可能不是这里的相关概念。这是一项复杂的任务。我推荐nutch。