2011-06-23 57 views

回答

3

一種可能性是建立一個custom Google search engine。然後您還需要創建一個開發人員密鑰,我相信這是在the console下完成的。

設定介紹後,你可以用代碼REST風格的調用,如下面,其檢索結果作爲JSON:

WebClient w = new WebClient(); 

string result; 
string uri; 
string googleAPIKey = "your developer key"; 
string googleEngineID = "your search engine id"; 
string template = "https://www.googleapis.com/customsearch/v1?key={0}&cx={1}&q={2}&start={3}&alt=json"; 
int startIndex = 1; 
int gathered = 0; 

uri = String.Format(template, googleAPIKey, googleEngineID, "yoursearchstring", startIndex); 
result = w.DownloadString(uri); 

對於提取的JSON結果的信息,您可以使用像Json.NET。它使得讀取信息變得非常容易:

JObject o = JObject.Parse(result); 

然後,您可以用一行代碼直接訪問所需的信息。

一個重要的信息是搜索API免費使用非常有限(每天100個請求)。因此,對於真實世界的應用程序,可能需要爲搜索付費。但取決於你如何使用它,每天可能有100個請求就足夠了。我使用Google搜索API編寫了一個小混搭來搜索感興趣的Stackoverflow站點信息,然後使用StackExchange API來檢索信息。爲了個人使用,它工作得很好。

相關問題