如何返回确切的谷歌搜索结果?

时间:2014-11-25 17:39:19

标签: c# api screen-scraping google-search-api

我正在使用c#应用程序返回特定关键字的前10个Google搜索结果。所以我决定试试Google搜索API。特别是,我使用的是一个名为“GoogleSearchAPI”的dotnet应用程序,但它没有返回与输入Google和Google的完全相同的结果。我很好奇是否有办法这样做。无论是使用谷歌搜索API还是通过其他方法,我真的不在乎哪种方式。

例如,以下是使用相同搜索词组的2个屏幕截图。第一个来自谷歌: enter image description here

这一个是从Google Search API返回的相同搜索短语的内容(这张图片在我的预览中看起来很模糊,所以为了以防万一,这里是图片网址:image link): enter image description here

正如您所看到的,api返回的结果非常不同。第一个谷歌搜索返回是谷歌加。 api返回实际的网站。然后,api返回3个Facebook结果,谷歌返回yelp。非常不同。

以下是我在GoogleSearchAPI中使用的示例代码:

WebQuery query = new WebQuery(tbQuery.Text);
        query.ResultSetSize.Value = ResultSetSize.large;
        IGoogleResultSet<GoogleWebResult> resultSet = GoogleService.Instance.Search<GoogleWebResult>(query);
        dgvResults.DataSource = resultSet.Results;

有谁知道如何检索Google返回的确切搜索结果?我总是可以采取刮擦,但这违反了谷歌的条款,所以我需要创建变通方法,它变得相当混乱,所以如果可以,我宁愿避免这样做。

由于

1 个答案:

答案 0 :(得分:1)

如果从API获得结果,一切都好。你无法通过谷歌搜索得到相同的结果,一切都是基于你的cookie,浏览器历史记录,书签,位置等。你可以尝试从两个不同的浏览器搜索,你会得到不同的结果。