2011-02-04 73 views
5

我需要提供一個基本的URL(如http://www.wired.com),並需要蜘蛛通過輸出頁面數組(從基本URL)的整個網站。有沒有任何圖書館可以做到這一點?尋找一個簡單的Java蜘蛛

謝謝。

回答

5

我已經使用Web Harvest幾次了,它非常適合網頁抓取。

Web-Harvest是開源Web數據 用Java編寫的抽取工具。它 提供了一種方法來收集所需的網頁並從 中提取有用的數據。爲了做到這一點,它利用已經建立的技術 和用於諸如XSLT,XQuery和 正則表達式的text/xml 操作的技術。 Web-Harvest 主要關注基於HTML/XML的web 網站,該網站仍然佔據Web內容的絕大多數 。另一方面, 可以很容易地由 自定義Java庫進行補充,以便 增強其提取功能。

另外,也可以使用工具,如JTidy首先一個HTML文檔轉換爲XHTML,然後再進行處理您需要XPath信息推出自己的網頁刷屏。例如,天真的XPath表達式可以從http://www.wired.com中提取所有超鏈接,如//a[contains(@href,'wired')]/@href。你可以在這個answer中找到一些類似問題的示例代碼。

+0

感謝此資源。我能夠成功地適應它。但是,如果網頁響應結果爲500,則在元素內容中找到輸出「無效XML字符(Unicode:0x0)」的刮板失敗(例如http://www.allure.com/magazine/flipbook)的文件。「有關此錯誤消息的任何想法? – rs79 2011-02-22 20:52:42

2

'簡單'在這裏可能不是一個相關的概念。這是一項複雜的任務。我建議nutch