寻找一个简单的Java蜘蛛

时间:2011-02-04 21:55:31

标签: java web-scraping

我需要提供一个基本网址(例如http://www.wired.com),并且需要在整个网站上显示输出一系列网页(在基本网址之外)。有没有可以解决这个问题的图书馆?

感谢。

2 个答案:

答案 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