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

标签 python biopython pubmed

你能告诉我如何从PubMed 获取5 篇最新文章吗?包含“肥胖”一词并使用 Python 返回每篇论文的作者、标题、日期、doi 和 PubMed PMID?提前谢谢你

编辑:

到目前为止我的尝试。我相信这是想要的结果,但我需要获得正确的 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)

最佳答案

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

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

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

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

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

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

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

关于python - 如何使用 Python 根据日期和术语从 Pubmed 检索信息?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60698583/

相关文章:

python - 如何用Python解方程

python - 使用 BeautifulSoup/Python 提取网站背景图像的 URL

python - 使用 Biopython 检索 Swissprot 条目的同工型序列?

biopython - 如何使用biopython库将多个pdb写入单个pdb文件

r - 计算R中列表的每个父节点下的xmlchildren数量

我的 mac 上的 python mysqldb 错误 :Library not loaded: @rpath/libmysqlclient. 21.dylib

python - 无法使用网络摄像头读取帧。错误-2147483638

python - 如何使用 Biopython 翻译 FASTA 文件中的一系列 DNA 序列并将蛋白质序列提取到单独的字段中?

r - 使用rentrez在R中解析XML文件

python - 如何在Python爬虫中访问多页面表单的发布数据