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

时间:2015-08-31 19:55:27

标签: python python-3.x urllib

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

objectValue.file

我的目标是现在使用API​​调用和urllib遍历此测试列表,但我不确定使用urllib.request.urlopen的语法('www.api.com /')

objectValue.title

2 个答案:

答案 0 :(得分:1)

显示的代码效果很好,

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)

你得到了,例如:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE eSummaryResult PUBLIC "-//NLM//DTD esummary v1 20041029//EN" "http://eutils.ncbi.nlm.nih.gov/eutils/dtd/20041029/esummary-v1.dtd">
<eSummaryResult>
<DocSum>
<Id>19435</Id>
<Item Name="PubDate" Type="Date">1977 May</Item>
<Item Name="EPubDate" Type="Date"></Item>
<Item Name="Source" Type="String">J Biochem</Item>
<Item Name="AuthorList" Type="List">
<Item Name="Author" Type="String">Nishina Y</Item>
<Item Name="Author" Type="String">Horiike K</Item>
<Item Name="Author" Type="String">Shiga K</Item>
<Item Name="Author" Type="String">Miyake Y</Item>
<Item Name="Author" Type="String">Yamano T</Item>
</Item>
<Item Name="LastAuthor" Type="String">Yamano T</Item>
<Item Name="Title" Type="String">Effect of halide anions on the binding of FAD to D-amino acid oxidase and the tryptophanyl fluorescence of the apoenzyme.</Item>
<Item Name="Volume" Type="String">81</Item>
<Item Name="Issue" Type="String">5</Item>
<Item Name="Pages" Type="String">1455-63</Item>
<Item Name="LangList" Type="List">
<Item Name="Lang" Type="String">English</Item>
</Item>
<Item Name="NlmUniqueID" Type="String">0376600</Item>
<Item Name="ISSN" Type="String">0021-924X</Item>
<Item Name="ESSN" Type="String">1756-2651</Item>
<Item Name="PubTypeList" Type="List">
<Item Name="PubType" Type="String">Journal Article</Item>
</Item>
<Item Name="RecordStatus" Type="String">PubMed - indexed for MEDLINE</Item>
<Item Name="PubStatus" Type="String">ppublish</Item>
<Item Name="ArticleIds" Type="List">
<Item Name="pubmed" Type="String">19435</Item>
<Item Name="eid" Type="String">19435</Item>
<Item Name="rid" Type="String">19435</Item>
</Item>
<Item Name="History" Type="List">
<Item Name="pubmed" Type="Date">1977/05/01 00:00</Item>
<Item Name="medline" Type="Date">1977/05/01 00:01</Item>
<Item Name="entrez" Type="Date">1977/05/01 00:00</Item>
</Item>
<Item Name="References" Type="List"></Item>
<Item Name="HasAbstract" Type="Integer">1</Item>
<Item Name="PmcRefCount" Type="Integer">1</Item>
<Item Name="FullJournalName" Type="String">Journal of biochemistry</Item>
<Item Name="ELocationID" Type="String"></Item>
<Item Name="SO" Type="String">1977 May;81(5):1455-63</Item>
</DocSum>

</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- 19435
OWN - NLM
STAT- MEDLINE
DA  - 19771020
DCOM- 19771020
LR  - 20131121
IS  - 0021-924X (Print)
IS  - 0021-924X (Linking)
VI  - 81
IP  - 5
DP  - 1977 May
TI  - Effect of halide anions on the binding of FAD to D-amino acid oxidase and the
      tryptophanyl fluorescence of the apoenzyme.
PG  - 1455-63
AB  - The quenching of tryptophanyl fluorescence of native and denatured D-amino acid
      oxidase from hog kidney was measured. About 60% of the tryptophanyl fluorescence 
      of the native apoenzyme was quenched by iodide at pH 8.3, and 25 degrees C. All
      of the tryptophanyl fluorescence of the apoenzyme in 6 M guanidine hydrochloride 
      was quenched. The tryptophanyl fluorescence quenching of the holoenzyme by
      1-methyl nicotinamide chloride was low in comparison with that of the apoenzyme. 
      These results of the quenching experiments are discussed based on the
      intermolecular collision quenching mechanism. By measuring the fluorescence
      intensities of the tryptophanyl residues and FAD of the holoenzyme solution, and 
      the fluorescence polarization of the holoenzyme solution containing halide anions
      such as iodide, bromide, chloride, or fluoride, we found that FAD dissociates
      from the holoenzyme in the presence of iodide, bromide, or chloride, and the
      ability to dissociate FAD from the holoenzyme decreases in order iodide, bromide,
      and chloride. However, fluoride seems to enhance the association reaction of FAD 
      with the apoenzyme. These results were consistent with the visible absorption
      spectra and derivative spectra of free FAD and the holoenzyme in the presence and
      absence of halide anions.
FAU - Nishina, Y
AU  - Nishina Y
FAU - Horiike, K
AU  - Horiike K
FAU - Shiga, K
AU  - Shiga K
FAU - Miyake, Y
AU  - Miyake Y
FAU - Yamano, T
AU  - Yamano T
LA  - eng
PT  - Journal Article
PL  - JAPAN
TA  - J Biochem
JT  - Journal of biochemistry
JID - 0376600
RN  - 0 (Apoenzymes)
RN  - 0 (Bromides)
RN  - 0 (Chlorides)
RN  - 0 (Iodides)
RN  - 146-14-5 (Flavin-Adenine Dinucleotide)
RN  - 8DUH1N11BX (Tryptophan)
RN  - EC 1.4.3.3 (D-Amino-Acid Oxidase)
RN  - Q80VPU408O (Fluorides)
SB  - IM
MH  - Animals
MH  - Apoenzymes/metabolism
MH  - Binding Sites
MH  - *Bromides/pharmacology
MH  - *Chlorides/pharmacology
MH  - *D-Amino-Acid Oxidase/metabolism
MH  - *Flavin-Adenine Dinucleotide
MH  - *Fluorides/pharmacology
MH  - *Iodides/pharmacology
MH  - Kidney/enzymology
MH  - Kinetics
MH  - Osmolar Concentration
MH  - Protein Binding
MH  - Protein Conformation
MH  - Spectrometry, Fluorescence
MH  - Spectrophotometry
MH  - Swine
MH  - Tryptophan/analysis
EDAT- 1977/05/01
MHDA- 1977/05/01 00:01
CRDT- 1977/05/01 00:00
PST - ppublish
SO  - J Biochem. 1977 May;81(5):1455-63.

答案 1 :(得分:0)

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