저는 재사용을 시도하여 기술이 부족합니다. 나는 현재 Pubmed API를 가지고 놀고있다. 나는 here 주어진 XML 파일을 구문 분석하고 각 자식 ('/ pubmedarticle')을 통과하고 지금은 기사 제목에 대해 몇 가지 잡아 루프를 실행하고 그 아래에 사전에 그들을 입력 pubmedid의 키 (pmid).lxml로 Pubmed API xml을 구문 분석 한 다음 사전에 어린이를 붙입니다.
같은 출력이 보일 것입니다 즉 : 지금은 그냥 내가 원하는 데이터를 얻을 패키지를 LXML 사용하는 방법을 파악하려는 위해 나는 등 작가와 저널과 같은 많은 요소에 추가합니다 나중에
{'29150897': {'title': 'Determining best outcomes from community-acquired pneumonia and how to achieve them.'}
'29149862': {'title': 'Telemedicine as an effective intervention to improve antibiotic appropriateness prescription and to reduce costs in pediatrics.'}}
사전에. 나는 나를 위해 이것을 할 수있는 많은 패키지가 있다는 것을 알고 있지만, 그것은 학습의 목적에 어긋납니다. 나는 여러 가지의 무리를 시도하고 이것이 내가 현재 할 노력하고있어 무엇 : 사람이 통찰력을 제공하거나 나를 이끌 수있는 경우
from lxml import etree
article_url = "http://eutils.ncbi.nlm.nih.gov/entrez/eutils/efetch.fcgi?db=pubmed&retmode=xml&tool=PMA&id=29150897,29149862"
page = requests.get(article_url)
tree = etree.fromstring(page.content)
dict_out = {}
for x in tree.xpath('//PubmedArticle'):
pmid = ''.join([x.text for x in x.xpath('//MedlineCitation/PMID[@Version="1"]')])
title = ''.join([x.text for x in x.xpath('//ArticleTitle')])
dict_out[pmid] = {'title': title}
print(dict_out)
내가 아마이 과정에 대해 이동하는 방법에 대한 오해가 있지만, 자원에 대한 올바른 방향으로, 그것은 크게 감사 할 것입니다.
편집 : 사과드립니다. 내가 쓴 것보다 훨씬 빨리 이것을 썼다. 나는 모든 경우를 고쳤다. 또한, 던졌습니다 결과가 단지 첫 타이틀을 제공하면서 PMIDs 결합하는 것 같다
{'2725403628806902': {'title': 'Handshake Stewardship: A Highly Effective Rounding-based Antimicrobial Optimization Service.Monitoring, documenting and reporting the quality of antibiotic use in the Netherlands: a pilot study to establish a national antimicrobial stewardship registry.'}}
따 모두의
문제는 무엇인가? 코드가 어떤 것을 생산합니까? 오류가 있습니까? – mzjn
'medlinecitation'은'MedlineCitation'이어야합니다. 'pmid'는'PMID'이어야합니다. 등등. 사례가 중요합니다! – mzjn
감사합니다 mzkn! 나는 희망을 갖고 독자들에게 질문을 고쳤다. –