13955925361 发表于 2024-5-23 18:00

Pubmed 根据关键词获取文献详情页内容

本帖最后由 13955925361 于 2024-5-23 20:20 编辑

首先我们使用Bio库中的Entrez模块,提供我们的联系邮箱和API密钥。

接下来,我们指定数据库为PubMed,以关键词"Esp & wheat"为例进行搜索,读者可自行输入。

我们使用esearch方法进行搜索,限定返回结果的数量为10条。

最后,我们打印出返回的ID列表,这些ID对应着PubMed中与搜索关键词相关的文献。



然后调用
pubmed-mapper:
( PubMed XML 映射到 Python 对象的 Python 库)

调用Article使用library功能获取相应pmid文献一一对应的具体信息


代码如下:(如有错误可以指出)另外我还使用drissionpage 自动化技术获取了10余个文献网站新发表的文章信息,包含文章title,pubdata,journal,abstract.如有需要我可以继续发帖,谢谢大家。

from Bio import Entrez
from pubmed_mapper import Article
Entrez.email = "123@example.com"

import re
def name(ab):
    t=[]
    for i in ab:
      a = str(i).split()
      del a
      b = " ".join(a)
      t.append(b)
      c=",".join(t)
    return c

def huoqu(can):
    article = Article.parse_pmid(can)
    PubMedID = article.pmid
    Doilist = article.ids
    Title = article.title
    Abstract = article.abstract
    Keywords = article.keywords
    Journal = article.journal
    Authors = article.authors
    Pubdate = article.pubdate
    c = {i.id_type: i.id_value for i in Doilist}
    Doi = c.get('doi')
    Author=name(Authors)
    Ino =
    return Ino



keyword=input('关键词:')
handle = Entrez.esearch(db='pubmed', term=keyword, retmax=10)
record = Entrez.read(handle)
handle.close()
pmids = record["IdList"]

print(pmids)
for i in pmids:
    print(huoqu(i))

如果想保存至本地,可使用如下代码添加进huoqu函数:
df = pd.DataFrame(Ino)
df.to_csv('test2.csv', mode='a', index=False, header=False)
另外记住在一开始import pandas as pd

xxs1234 发表于 2024-5-23 19:23

测试一下,哈哈哈
页: [1]
查看完整版本: Pubmed 根据关键词获取文献详情页内容