Ich versuche, von einer Website zu analysieren. Ich stecke fest. Ich werde das XML unten zur Verfügung stellen. Es kommt von einer Webiste. Ich habe zwei Fragen. Was ist der beste Weg, XML von einer Website zu lesen, und dann habe ich Probleme, in das XML zu graben, um die Rate zu bekommen, die ich brauche.Python XML Parsing von der Website
Die Figur, die ich wieder brauchen, ist Basis: OBS_VALUE 0,12
Was ich habe, so weit:
from xml.dom import minidom
import urllib
document = ('http://www.newyorkfed.org/markets/omo/dmm/fftoXML.cfm?type=daily''r')
web = urllib.urlopen(document)
get_web = web.read()
xmldoc = minidom.parseString(document)
ff_DataSet = xmldoc.getElementsByTagName('ff:DataSet')[0]
ff_series = ff_DataSet.getElementsByTagName('ff:Series')[0]
for line in ff_series:
price = line.getElementsByTagName('base:OBS_VALUE')[0].firstChild.data
print(price)
XML-Code von webiste:
-<Header> <ID>FFD</ID>
<Test>false</Test>
<Name xml:lang="en">Federal Funds daily averages</Name> <Prepared>2013-05-08</Prepared>
<Sender id="FRBNY"> <Name xml:lang="en">Federal Reserve Bank of New York</Name>
<Contact>
<Name xml:lang="en">Public Information Web Team</Name> <Email>[email protected]</Email>
</Contact>
</Sender>
<!--ReportingBegin></ReportingBegin-->
</Header>
<ff:DataSet> -<ff:Series TIME_FORMAT="P1D" DISCLAIMER="G" FF_METHOD="D" DECIMALS="2" AVAILABILITY="A">
<ffbase:Key>
<base:FREQ>D</base:FREQ>
<base:RATE>FF</base:RATE>
<base:MATURITY>O</base:MATURITY>
<ffbase:FF_SCOPE>D</ffbase:FF_SCOPE>
</ffbase:Key>
<ff:Obs OBS_CONF="F" OBS_STATUS="A">
<base:TIME_PERIOD>2013-05-07</base:TIME_PERIOD>
<base:OBS_VALUE>0.12</base:OBS_VALUE>
Vielen Dank. Ich muss Minidom verwenden. Danke für die Korrektur. –
Die hinzugefügten Informationen werden geschätzt –
Warum haben Sie url_str zu xml_str geändert? Sollte sein: xml_str = urllib.urlopen (url_str) .read() – Moulde