如何使用 Python 根据日期和术语从 Pubmed 检索信息?

How to retrieve information from Pubmed according to date and term using Python?

你能告诉我如何从 PubMed 获得 5 篇最新的文章,其中包含词 'obesity' 和 return 作者、标题、日期、doi 和 PubMed每篇论文的 PMID 使用 Python?提前谢谢你

编辑:

到目前为止我的尝试。我相信这是想要的结果,但我需要获得正确的 pubmed id 才能 运行 函数

from Bio.Entrez import efetch
from Bio import Entrez
Entrez.email = 'name@example.com'

def print_abstract(pmid):
    handle = efetch(db='pubmed', id=pmid, retmode='text', rettype='abstract')
    print(handle.read())

print_abstract(pmid)

您可以使用 Bio.Entrez 中的 esearch 函数来查找与查询匹配的最新 PubMed 条目的 UID:

handle = Entrez.esearch(db="pubmed", term="obesity", retmax=5)
results = Entrez.read(handle)                                                   
print(results["IdList"])

通过指定 term,您可以提供查询字符串 - 从您的问题中,您正在寻找与 "obesity" 相关的条目。 retmax 允许我们配置应返回多少个 UID(默认为 20)。

当我现在 运行 时,我得到以下 UID:

['32171135', '32171042', '32170999', '32170940', '32170929']

在撰写本文时,这些对应于您手动执行 PubMed 搜索时的最新条目 UID。它们按最新条目排在最前面。

使用这些 UID,您的 print_abstract 函数按预期执行。