2012-06-10 88 views
0

我正在尋找一個C#的網絡爬蟲或鏈接刮板的實現,我可以修改以滿足我們的需求。我們需要一些我們可以按需運行的內容來追蹤我們網站的列表,以便關注某些鏈接。蜘蛛並不需要存儲網站的副本,下載圖像或任何類型的東西 - 它只需要報告鏈接到某些網站的任何頁面,這些網頁與少量的子字符串相匹配。建議 - C#/。NET鏈接搜索/網絡爬蟲框架

我已經看到像arachnode.net(以及其他很多示例)的抓取程序實現,但它們都包含圍繞保存內容的大量代碼。我們不需要那樣做。我們只需要解析每個鏈接的頁面並返回任何包含符合某些條件的鏈接(這將是一個簡單的子字符串匹配)。

任何人都可以推薦一個框架或例子,可以幫助我開始?似乎有很多方法可以實現它(特別是.NET 4和HTML Agility Pack),但由於我們需要定期運行它,所以高性能線程或並行處理實現很重要。

[編輯]

我可能不清楚 - 這將不得不在桌面上運行,而不是作爲一個ASP.Net網站的一部分。公司擁有的站點跨越多個域,服務器和地理位置,因此它不能成爲服務器端解決方案。

+0

有在正是這樣做的(Console.Benchmark)的DEMO一個免費版本......還有,你沒有保存的數據,可以關閉。 AN.Next比完整的AN更輕,您可以通過代表附上您的規則 - 非常簡單...(不是我有偏見或任何...) –

+0

您可能想看看我的實施。 https://stackoverflow.com/a/16975398/1610747 – Misterhex

回答

1

搜索引擎優化命名空間可以幫助這裏嗎?是的WebCrawler類你正在尋找:

http://msdn.microsoft.com/en-us/library/microsoft.web.management.seo.crawler.webcrawler(v=VS.90).aspx

+0

我很欣賞答案,並編輯了原來的問題更清楚一點。不幸的是,我們需要分析的網站已經全部結束了,因此服務器端解決方案在我們的案例中不起作用。 –

+0

桌面應用程序仍然可以引用和使用服務器組件。可能有點棘手,有點可行 – R0MANARMY