在Python 3.4中使用urllib获取打开url的输入



假设我有一个id列表(让我们初始化代码)

import urllib.request 
import urllib.parse 
import re  
from urllib import request 
test_list = ['1234','2345','34566','55564','19435']

我的目标是现在通过使用API调用和urllib迭代这个测试列表,但我不确定使用urllib.request.urlopen('www.api.com/')的语法

for i in test_list:
#Now I want to iterate through each ID and make an individual API call to pubmed with each one.
#Obviously I will nest other operations within the for loop, however, I cannot get the syntax for
id_request = urllib.request.urlopen('http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esummary.fcgi?db=pubmed&id={i}'.format(i=i))

显示的代码运行良好,

for i in test_list:
id_request = urllib.request.urlopen('http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esummary.fcgi?db=pubmed&id={i}'.format(i=i))
xml = id_request.read()
print(xml)

得到,例如:

<>以前& lt; ?xml version="1.0" encoding="UTF-8"?>& lt; !DOCTYPE eSummaryResult PUBLIC "-//NLM//DTD summary v1 20041029//EN" "http://eutils.ncbi.nlm.nih.gov/eutils/dtd/20041029/esummary-v1.dtd">& lt; eSummaryResult>& lt; DocSum>& lt; Id> 19435 & lt;/Id><项目名称 类型="Date">1977年5月<项目名称 类型="Date"><项目名称 类型="字符串">J biochemistry<项目名称 类型="List"><项目名称 类型="字符串"><项目名称 类型="字符串">Horiike K<项目名称 类型="字符串">滋贺K<项目名称 类型="字符串">Miyake Y<项目名称 类型="字符串">山野T& lt;/Item><项目名称 类型="String">Yamano T<项目名称 类型="字符串">卤化物阴离子对FAD与d -氨基酸氧化酶结合及脱酶色氨酸荧光的影响<项目名称 类型="String">81<项目名称 类型="String">5<项目名称 类型="String">1455-63<<项目名称="LangList"类型="List"><项目名称 类型="String">English& lt;/Item><项目名称 类型="字符串">0376600项目名称="ISSN"类型="字符串">0021-924X<项目名称 类型="字符串">1756-2651<项目名称 类型="List"><项目名称 类型="String">Journal articles <& lt;/Item><项目名称 类型="String">PubMed -索引为MEDLINE<项目名称 类型="String"><项目名称 类型="List"><项目名称 类型="String">19435<<项目名称="eid"类型="String">19435项目名称="rid"类型="String">19435& lt;/Item><项目名称 类型="List"><项目名称 类型="日期">1977/05/01 00:00<<项目名称="medline"类型="Date">1977/05/01 00:01<项目名称 类型="Date">1977/05/01 00:00& lt;/Item><项目名称 类型="列表"><项目名称 类型="Integer">1<项目名称 类型="Integer">1<项目名称 类型="String">Journal of biochemistry<项目名称 类型="字符串"><项目名称 类型="字符串">

1977年5月;81(5):1455-63& lt;/DocSum>& lt;/eSummaryResult>奖金

使用biopython

from Bio import Entrez
Entrez.email = 'email@example.com'
handle = Entrez.efetch(db="pubmed", id='19435', rettype="medline", retmode="text")
handle.read()

你:

<>以前PMID - 19435Own - NLMSTAT - MEDLINEDa - 19771020DCOM - 19771020Lr - 20131121IS - 0021-924X(打印)IS - 0021-924X(链接)Vi - 81IP - 5DP - 1977年5月卤化物阴离子对FAD与d -氨基酸氧化酶结合的影响脱酶的色氨酸荧光。Pg - 1455-63AB -天然和变性d -氨基酸色氨酸荧光猝灭测定了猪肾氧化酶的含量。约60%的色氨酸荧光在pH 8.3和25℃条件下,用碘化物灭活天然脱酶6 M盐酸胍中脱酶的色氨酸荧光就熄了。色氨酸荧光猝灭的全酶1-甲基烟酰胺氯与脱酶相比含量较低。在此基础上对淬火实验结果进行了讨论分子间碰撞猝灭机制。通过测量荧光全酶溶液中色氨酸残基和FAD的强度含卤化物阴离子的全酶溶液的荧光极化如碘化物、溴化物、氯化物或氟化物,我们发现FAD会解离从全酶在碘化物、溴化物或氯化物存在下,和从全酶中分离FAD的能力依次降低碘化物、溴化物、和氯。然而,氟似乎增强了FAD的缔合反应和脱酶一起。这些结果与可见光吸收一致游离FAD和全酶在和存在下的光谱和导数光谱没有卤化物阴离子。FAU -西西那,Y日本-日本FAU - Horiike, KAU - Horiike K滋贺,KAU -志贺KFAU -三宅,YAU - Miyake YFAU - Yamano, TAU - Yamano TLA - engPT -期刊文章Pl -日本生物化学生物化学杂志Jid - 0376600RN - 0(酶)RN - 0(溴化物)RN - 0(氯化物)RN - 0(碘化物)RN - 146-14-5(黄素腺嘌呤二核苷酸)RN - 8DUH1N11BX(色氨酸)RN - EC 1.4.3.3 (d -氨基酸氧化酶)RN - q80vpu4080(氟化物)Sb - imMH -动物MH -酶/代谢MH -结合位点MH - *溴化物/药理学MH - *氯化物/药理学MH - * d -氨基酸氧化酶/代谢MH - *黄素-腺嘌呤二核苷酸MH - *氟化物/药理学MH - *碘化物/药理学MH -肾/酶学MH -动力学MH -渗透压浓度MH -蛋白质结合MH -蛋白质构象MH -荧光光谱法MH -分光光度法MH -猪MH -色氨酸/分析EDAT——1977/05/01星期一- 1977/05/01 00:01Crdt - 1977/05/01 00:00PST - ppublish
xmls = [urllib.request.urlopen('http://eutils.ncbi.nlm.nih.gov/entrez/eutils/esummary.fcgi?db=pubmed&id='+x).read() for x in test_list]

print (xmls[0])
print (xmls[1])
.. etc

最新更新