2010-11-18 67 views
1

我只想用下面的C#代码片段返回四个结果。我怎样才能做到这一点?我知道我可能只是解析返回的结果,但我宁愿只抓住四个开始,如果可能的话。如何限制本C#程序中返回的Google搜索结果的数量?

var searchTerm = "pizza boxes"; 
     using (var web = new WebClient()) 
     { 
      web.Headers.Add("Referrer", "http://localhost:49360/"); 
      var result = web.DownloadString(String.Format(
        "http://ajax.googleapis.com/ajax/services/search/web?v=1.0&q={0}", 
        searchTerm)); 
      Console.WriteLine(result); 
     } 

在此先感谢您的帮助!

回答

2

基于this documentation它看起来像你可以只是把

rsz=4 

在URL中。

注意,虽然我对谷歌的工作,我对这些API没有经验,而这个答案应该被看作是一个个人一个,而不是与谷歌:)相关

(我还注意到, 。API已被弃用。你看着移动到custom search API代替)

+0

Aww!已过时?!?嘿,看起来我会在您提供的链接上查看自定义搜索API。谢谢,Skeet先生!我很感激! – Kevin 2010-11-18 07:14:42

+0

@Altar:三年后我并不特别感到惊讶。我不确定该服务是否存在。 – 2013-11-25 16:12:49

+0

@JonSkeet - 新api(自定义搜索API)的链接已损坏! – Ampere 2013-11-26 17:00:11

1

认为你有两个参数可以设置:

start=1; 
rsz='large' 

rsz VAL你可以设置为smalllarge,小将获取4个结果,大将获取8个结果。

start值可以设置为从该特定行开始的任何其他整数。

+0

谢谢,马丁!我刚才在Skeet先生(上面)的回答中提到的第一个链接上看到了这些价值。我很感激! – Kevin 2010-11-18 07:21:54

+0

猜测我太晚了,但看起来像rsz只需要小/大,而不是一个整数。但是自定义搜索API更清晰。 – Martin 2010-11-18 07:24:04

相关问题