所以我使用谷歌的自定义搜索API for python(3.6.6)来搜索自定义图像,我一直在使用这段代码:
from googleapiclient.discovery import build
import pprint
my_api_key = 'AIzaSyDouxn16TxJ8vym5AC1_A3nlMCzc5gpRjg'
my_cse_id = '007260579175343269764:pt3gyxmajmg'
def google_search(search_term, api_key, cse_id, **kwargs):
service = build("customsearch", "v1", developerKey=api_key)
res = service.cse().list(q=search_term, cx=cse_id, searchType="image", **kwargs).execute()
return res['items']
results = google_search(
'Mocha', my_api_key, my_cse_id)
pprint.pprint(results)
但这是问题所在,每次使用它都会返回相同的搜索结果,它会返回相同的结果 . 我想问一下;每次使用代码时如何让它返回不同的搜索结果?
附:我希望代码在同一个搜索查询中给我一个不同的图片,比如当我使用谷歌图片时,我搜索 Mocha
它显示了 Headers 中有Mocha的不同图像列表,但这里的代码搜索给出的查询,然后选择第一个,每次使用它 . 所以我想让它选择/给我一个不同的 .
1 回答
再见,
你总是得到相同的输出,因为你总是问
Mocha
的结果 . 当您在Google搜索栏中输入相同的字词时,也会发生同样的情况如果要使用不同的输出,则必须更改执行的查询 . 我的方法是依赖于random word generator,以便每次运行代码时都更改搜索
在这里,我修改了您自己的代码段来执行这项确切的工作:
Edit after clarification in the comment
为了使同一查询得到不同的结果,您可以从第一页以外的页面中选择结果 . 接下来的方法来自this answer,您可以根据需要调整起始索引 . 在这个片段中,我们选择一个页面,选择1到100之间的随机数 . 请记住,每10个单位你有下一页,所以根据"Second page has URL which contains start=10 parameter. Third page has URL which contains start=20"之前给出的链接等
如果这是您正在寻找的答案,请告诉我,祝您有个美好的一天!