用于搜索专利数据库的 Python 模块,即 USPTO 或 EPO

标签 python python-2.7 search

对于我的工作,我必须在生物医学研究和行业中寻找潜在客户。

我使用模块 biopython 编写了一些非常方便的程序,它有一个很好的搜索 NCBI 的界面。我还使用了 clinical_trials 模块来搜索 clinicaltrials.gov。

我现在想搜索专利数据库,例如 EPO 或 USPTO,但我什至找不到 python 模块的丝毫踪迹。但也许我遗漏了一些明显的东西?

由于谷歌有专利搜索选项,我想知道是否有一个搜索谷歌的python模块可以适应只搜索专利?

最佳答案

您至少可以使用任何 XML 解析工具(例如 lxml python 模块)解析 USPTO。

Gabe Fierro 发表了一篇关于如何做到这一点的优秀论文,可在此处获取:Extracting and Formatting Patent Data from USPTO XML (没有付费墙)

Gabe 还参与了一些关于这样做的有用讨论 here on this google group .

最后,如果您知道自己在寻找什么并且有足够的磁盘空间,您还可以获取本地存储的批量数据以供处理。美国专利商标局批量下载 here .

任何更具体的问题请告诉我!我之前已经踏过这片土地了:)

此外,Google 专利搜索 API 已被弃用,但您现在可以使用 URL 标签通过主要的 Google 搜索 API 进行相同的搜索(我手边没有它们,但您可以通过 Google 专利搜索找到它们由 google.com 回复)。

更新:现在在家里,您想要使用谷歌自定义搜索 API 进行专利搜索的标志是 &tbm=pts - 请注意谷歌自定义搜索引擎并获取其代码对专利搜索非常有益,因为交付的 JSON 具有良好的数据结构,其中包含特定于专利的字段。

示例代码:

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.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()

这将(一旦您添加了免费的 API 访问信息)获取 Altera 拥有的前十项专利(作为示例)并将生成的 JSON 保存到文本文件中。打开您最喜欢的 Web JSON 编辑器并查看 JSON 文件。我特别建议查看 ['items'][] 和子 ['pagemap']。只需解析此 JSON,您就可以获得标题、缩略图、片段、标题、链接,甚至引用(如果相关)。

关于用于搜索专利数据库的 Python 模块,即 USPTO 或 EPO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15028166/

相关文章:

Python turtle 模块导致 OS X 崩溃

Python 无法获取 iotop 输出

svn - 查找哪些分支正在修改文件

c# - mysql 搜索多个字段

android - 如何在android应用程序中添加搜索选项?

python - py.test 未正确从 conftest 导入模块 - 失败并显示 ConftestImportFailure : ModuleNotFound

Python 字符串格式化

python - 如何在正在运行的 Python 线程上调用函数

bash - Shell-Script Python 调用失败并出现语法错误

python - 导入涉及另一个函数python的函数