gpt4 book ai didi

python - 在 Google 自定义搜索 API 中指定日期范围

转载 作者:行者123 更新时间:2023-12-03 09:05:43 24 4
gpt4 key购买 nike

在特定日期范围内的某个网站中搜索一组关键字非常简单:在您输入的 Google 搜索框中

desired-kewords site:desired-website

然后从“工具”菜单中选择日期范围。

例如2011年1月1日至2013年12月31日期间在www.cnn.com上搜索“阿拉伯之春”:

enter image description here

正如您在第二张图片中看到的,大约有 773 个结果!搜索 URI 如下所示:

https://www.google.co.nz/search?tbs=cdr%3A1%2Ccd_min%3A1%2F1%2F2011%2Ccd_max%3A12%2F31%2F2013&ei=iDcnWoy3Jsj38QW514S4Aw&q=arab+spring+site%3Awww.cnn.com&oq=arab+spring+site%3Awww.cnn.com&gs_l=psy-ab.12...0.0.0.6996.0.0.0.0.0.0.0.0..0.0....0...1c..64.psy-ab..0.0.0....0.a4-ff19obY4

日期范围可以在 tbs 参数的 cd_mincd_max 中看到(每当使用工具菜单时,该参数就会出现在 URI 中)。

我想使用 Google 的 Python 自定义搜索 API 客户端以编程方式获得相同的功能。

我定义了一个自定义搜索引擎:

enter image description here

然后尝试了我在网络/堆栈溢出上找到的不同建议:

嗯!有什么可行的解决方案吗?

最佳答案

我可能会迟到,但对于其他正在寻找解决方案的人来说,您可以尝试以下操作:

from googleapiclient.discovery import build

my_api_key = "YOUR_API_KEY"
my_cse_id = "YOUR_CSE_ID"

def google_results_count(query):
service = build("customsearch", "v1",
developerKey=my_api_key)
result = service.cse().list(q=query, cx=my_cse_id, sort="date:r:20110101:20131231").execute()
return result["searchInformation"]["totalResults"]

print google_results_count('arab spring site:www.cnn.com')

此代码将返回大约 1500 多个结果。

距离网络结果还很远,Google has an explanation why .

此外,如果您尚未设置 CSE 来搜索整个网络,here's a guide on how to set it up.

P.S.如果您仍然想获取网页版的结果/数据,您可以使用 BeautifulSoup 或其他库来抓取它。

关于python - 在 Google 自定义搜索 API 中指定日期范围,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47665573/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com