Google未返回超过64个结果

时间:2010-08-19 11:09:18

标签: google-api google-api-dotnet-client

我正在使用.Net的Google API http://code.google.com/p/google-api-for-dotnet/ 无论我要求多少结果,谷歌的回报都不会超过64。

这是我的代码段:

GwebSearchClient client = new GwebSearchClient("xyz");
IList<IWebResult> results = client.Search(this.SearchText.Text, 100);

我预计会得到100个结果,但不管搜索术语是多少都不会超过64个。

有什么想法吗?

2 个答案:

答案 0 :(得分:2)

根据Google AJAX Search API(使用与.NET API相同的HTTP服务器请求),返回的最大结果为64。

  

注意:结果页面的最大数量取决于搜索者的类型。本地搜索支持4页(或总共32个结果),其他搜索者(博客,书籍,图像,新闻,专利,视频和Web)支持8页(最多总共64页)。

here,向上滚动两行。或者在页面中搜索“最大数量”。

答案 1 :(得分:0)

总是有解析html的选项:
我需要大约200,000,000(或至少24M)的结果,并且由于API没有削减它,我决定下载html结果并使用正则表达式手动解析它们。使用HashTables,我能够消除任何重复项。

我的正则表达式:
(仅解析具有给定域名的网址,并包含包含3-20个字母数字字符的子域名)

@"((?!www)([A-Za-z0-9-]{3,20})(\.example\.com))"

使用的HTML网址:

[C# Source]
String.Format(  "http://www.google.com/search?q=site:{0}&num={1}"+
                "&hl=en&tbo=d&as_qdr=all&start={2}&sa=N&biw=1280&bih=709", 
                "example.com", count, start)

这已经在我自己的应用程序中进行了测试,并产生了相当不错的结果!