google 自定义搜索 returns 不同的结果?

google customsearch returns different result?

我正在尝试 google 自定义搜索 api 来搜索图像,但奇怪的是我通过 api returns 进行的搜索与通过浏览器进行常规搜索的结果不同.例如

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 的 google 搜索的快照 查询相同,有人知道为什么吗?

这取决于您从 google 控制台创建的自定义搜索引擎。转到 google 控制台上的 CSE 并尝试 "View it on the web" 选项以在浏览器中测试它以及结果是否匹配。结果应该匹配。

您的常规 google 搜索将基于 google 收集的大量关于您的信息。

您的常规 google 搜索将基于 google 收集的大量关于您的信息。如果您退出 google 并且 使用隐身模式 window,它应该不会受到影响。

我认为发生这种情况是因为在使用 API 时,您可以发出大约每小时 40 个请求。您在 API 上看到的结果并不是真实用户看到的。你受限于他们给你的东西,如果你想跟踪真实用户会看到什么,这并不是很有用。那是你不能收集的东西。

此外,在通过浏览器进行 regular/normal 搜索时,由于以下原因之一,结果可能会有所不同:

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