谷歌自定义搜索返回不同的结果?

13

我正在尝试使用Google自定义搜索API搜索图片,但奇怪的是,通过API进行的搜索返回的结果与通过浏览器进行的常规搜索不同。例如

from apiclient.discovery import build
import pprint
import sys
api_key='xxxxxxx'
service = build('customsearch', 'v1', developerKey=api_key)
request=service.cse()
query=request.list(cx='xxxx:xxxxx',q='dogs and cats',searchType='image',imgType='photo')
result=query.execute()
pprint.pprint(result)
for i in result.get('items',[]):
    print (i['link'])

运行这段代码会得到完全不同的结果 这是运行上述代码的结果

https://s.yimg.com/ny/api/res/1.2/tarWzt2ZXfPOEg8oQVlOWw--/YXBwaWQ9aGlnaGxhbmRlcjtzbT0xO3c9ODAw/http://media.zenfs.com/en-US/homerun/people_218/4d82a5fa19dd37247717704975fdf602
https://www.google.com/about/main/machine-learning-qa/img/cat-dog-flow-horizontal.gif
https://www.google.com/trends/2014/static/images/pets-snapshot-reveal-1920.jpg
https://www.google.com/trends/2014/static/images/pets-share.png
https://www.google.com/about/main/machine-learning-qa/img/cat-dog-flow-vertical.gif
https://s.yimg.com/uu/api/res/1.2/YQWuQgTnzQuwXjYzX.QrWg--~B/aD0xMzMzO3c9MjAwMDtzbT0xO2FwcGlkPXl0YWNoeW9u/http://media.zenfs.com/en-US/homerun/people_218/4d82a5fa19dd37247717704975fdf602
https://www.google.com/trends/2014/static/images/pets-video-1080.jpg
https://www.google.com/trends/2014/static/images/pets-video-320.jpg
https://www.google.com/maps/d/thumbnail?mid=1hO0YkGLATyy-ZI9JxX1lbv-wK1M&hl=en_US

这是来自Chrome的谷歌搜索快照。 在此输入图片描述 查询是相同的,有人知道为什么吗?


1
这个 Google Chrome 快照是从全新的“隐身”窗口中获取的吗?Google 根据您之前的搜索历史记录为您的个人资料定制搜索结果,这可能会影响您的测试标准。 - FraggaMuffin
4个回答

5

这取决于您从Google控制台创建的自定义搜索引擎。进入您的Google控制台中的CSE,尝试使用“在web上查看”选项在浏览器中测试它,以确保结果匹配。结果应该是一致的。


我尝试了一下,结果与在浏览器上使用google.com进行正常搜索不同...为什么会这样? - ikel
正如@ Artemis Fowl所提到的 - “您正常的谷歌搜索将基于谷歌收集的大量关于您的信息。如果您退出谷歌并使用隐身窗口,则不会受到影响。” - joginder singh

4
您正常的Google搜索结果将基于Google获取的关于您的大量信息。

4

您平常在谷歌上搜索的结果是基于谷歌收集到的关于您的大量信息。如果您退出谷歌并使用隐身窗口,搜索结果将不受影响。


3

我认为这是因为当使用API时,你每小时只能发出大约40个请求。 API返回的结果并不是真正用户看到的结果。你受限于他们所给的结果,如果你想跟踪真正用户的浏览情况,那么这并不是很有用。这也是你不被允许收集这些信息的原因。

此外,在普通的浏览器搜索中,结果可能会因以下原因而有所不同:

  • 你的个人搜索历史记录
  • 你是否在搜索时登录了Google账户
  • 你的地理位置
  • 你正在使用的浏览器类型
  • 页面上生成的Google广告数量
  • 在单个设备上先前的搜索
  • 之前点击过的Google链接等等

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接