2012-02-09 33 views
1

我期待創建一個簡單的Web服務來抓取特定網站上的網頁並查找某個人的名字。任何人都知道是否有任何這樣的例子,或任何人都可以幫助我開始呢?如何爲關於人的新聞文章構建.NET Web刮板

編輯:我應該提到我想用Visual Studio C#做到這一點。我只會看看我指定的英文新聞網站。

+0

http://www.google.by/search?q=crawl+web+page+C%23&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox- a – 2012-02-09 21:45:58

+0

我還沒有嘗試過任何東西,我還沒有找到一個很好的例子。 – 2012-02-09 21:46:17

+0

它會基於很多東西,你使用的語言(這種語言有哪些工具可用),你試圖抓住什麼樣的特定內容是立即想到的兩種。我建議搜索Screen Scrapper Gent 2012-02-09 21:43:17

回答

2

下面是一個簡單的函數,返回true,如果一個網頁包含一個人的名字:

string response; 
using (System.Net.WebClient wc = new System.Net.WebClient()) 
{ 
    response = wc.DownloadString(url); 
} 
return reponse.Contains("John Doe"); 

爲了找到頁面內的鏈接,請看看這個問題:Parse HTML links using C#
您可以在整個網站收集不同的網址,併爲您找到的每個網址運行上面的代碼。

此外,將其輸入Google以查看他們找到的內容。 site:www.somesite.com "John Doe"

+0

這個和Agility pack之間的嗯,我可以讓它點擊着陸頁上的各種鏈接並檢查名稱並保存該鏈接。 – 2012-02-09 22:00:34

1

對於爬網程序和解析器(解決方案的兩個部分),使用c#的最佳選擇是使用HtmlAgility Pack公開的功能,該功能可以在CodePlex上找到。

參考這個答案的例子使用場景:How to use HTML Agility pack