使用python+google自定义搜索API搜索专利



我正在尝试使用谷歌自定义搜索API以编程方式探索USPTO。作为第一步和理智,我尝试运行现有脚本, 发布在Stack Overflow上,做了一个小改动(urllib.quote变成了urllib.parse.quote(。 代码如下:

import requests
import urllib
import time
import json
access_token = <get yours by signing up for google custom search engine api>
cse_id = <get yours by signing up for google custom search engine api>
# Build url
start=1
search_text = "+(inassignee:"Altera" | "Owner name: Altera") site:www.google.com/patents/"
# &tbm=pts sets you on the patent search
url = 'https://www.googleapis.com/customsearch/v1?key='+access_token+'&cx='+cse_id+'&start='+str(start)+'&num=10&tbm=pts&q='+ urllib.parse.quote(search_text)
response = requests.get(url)
response.json()
f = open('Sample_patent_data'+str(int(time.time()))+'.txt', 'w')
f.write(json.dumps(response.json(), indent=4))
f.close()

以下是我在响应文件中得到的内容:

{
"error": {
"errors": [
{
"domain": "usageLimits",
"reason": "keyInvalid",
"message": "Bad Request"
}
],
"code": 400,
"message": "Bad Request"
}
}

搜索有什么问题? 这不是身份验证错误,那么有什么问题呢? 谢谢大家,祝你有美好的一天(-:!

我认为您的 API 密钥有问题。 你可以在谷歌自定义搜索Api上找到类似的问题,不断给我"使用限制"错误。 您可以尝试请求新密钥。

在那之后,你肯定必须使用谷歌自定义搜索API吗?如果您计划发出少量请求,请考虑使用 https://pypi.org/project/google-search/。

希望对您有所帮助。

如果您只想使用谷歌专利进行搜索,您可以从自定义搜索设置中对其进行配置,并将其添加为搜索选项的网站。从search_text中删除网站:www.google.com/patents/,它应该可以工作。

最新更新