【问题标题】:google customsearch returns different result?谷歌自定义搜索返回不同的结果?
【发布时间】:2018-08-04 03:09:42
【问题描述】:

我正在尝试使用 google customsearch 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 的谷歌搜索的快照 查询都是一样的,有人知道为什么吗?

【问题讨论】:

  • 谷歌浏览器的快照是来自一个新的“隐身”窗口吗? google 会根据您以前的搜索历史将您的搜索结果个性化到您的个人资料中,这可能会影响您的测试标准。

标签: python python-3.x search google-api google-custom-search


【解决方案1】:

这取决于您从谷歌控制台创建的自定义搜索引擎。转到您的谷歌控制台上的 CSE 并尝试“在网络上查看”选项以在您的浏览器中测试它,如果结果匹配。结果应该匹配。

【讨论】:

  • 我试过了,结果与使用浏览器在 google.com 上的正常搜索不同...这是为什么
  • 正如@Artemis Fowl 提到的那样-“您的正常谷歌搜索将基于谷歌收集的关于您的大量信息。如果您退出谷歌并使用隐身窗口,它应该不受影响。”
【解决方案2】:

您的正常谷歌搜索将基于谷歌收集到的关于您的大量信息。如果您退出谷歌使用隐身窗口,它应该不受影响。

【讨论】:

    【解决方案3】:

    您的正常谷歌搜索将基于谷歌收集的关于您的大量信息。

    【讨论】:

      【解决方案4】:

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

      此外,在通过浏览器进行常规/正常搜索时,结果可能会因以下原因之一而有所不同:

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多