-1
特定の値(pmSctpAborted、pmSctpInErrors)を抽出するXMLファイルがあります。Pythonを使って入れ子になったXMLを解析する
以下は、私が使用しているXMLファイルの例です。
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="MeasDataCollection.xsl"?>
<!DOCTYPE mdc SYSTEM "MeasDataCollection.dtd">
<mdc xmlns:HTML="http://www.w3.org/TR/REC-xml">
<mfh>
<ffv>32.401 V6.2</ffv>
<sn>SubNetwork=ONRM_ROOT_MO_R,SubNetwork=MKT_9360,MeContext=936001_STURGEON_BAY_MEYER</sn>
<st></st>
<vn></vn>
<cbt>20170924154500Z</cbt>
</mfh>
<md>
<neid>
<neun>936001_STURGEON_BAY_MEYER</neun>
<nedn>SubNetwork=ONRM_ROOT_MO_R,SubNetwork=MKT_9360,MeContext=936001_STURGEON_BAY_MEYER</nedn>
<nesw>CXP102051/26_R28BY</nesw>
</neid>
<mi>
<mts>20170924160000Z</mts>
<gp>900</gp>
<mt>pmSwitchIngressDiscards</mt>
<mt>pmSwitchIngressLoad</mt>
<mv>
<moid>ManagedElement=1,Equipment=1,Subrack=1,Slot=1,PlugInUnit=1</moid>
<r></r>
<r></r>
</mv>
</mi>
</md>
<md>
<neid>
<neun>936001_STURGEON_BAY_MEYER</neun>
<nedn>SubNetwork=ONRM_ROOT_MO_R,SubNetwork=MKT_9360,MeContext=936001_STURGEON_BAY_MEYER</nedn>
<nesw>CXP102051/26_R28BY</nesw>
</neid>
<mi>
<mts>20170924160000Z</mts>
<gp>900</gp>
<mt>pmSctpAborted</mt>
<mt>pmSctpActiveEstab</mt>
<mt>pmSctpCurrEstab</mt>
<mt>pmSctpInErrors</mt>
<mt>pmSctpInNoPorts</mt>
<mt>pmSctpPassiveEstab</mt>
<mt>pmSctpShutdowns</mt>
<mt>pmSctpStatAssocOutOfBlue</mt>
<mt>pmSctpStatChecksumErrorCounter</mt>
<mt>pmSctpStatCommResume</mt>
<mt>pmSctpStatCommStop</mt>
<mt>pmSctpStatFragmentedUserMsg</mt>
<mt>pmSctpStatOutOfOrderRecChunks</mt>
<mt>pmSctpStatOutOfOrderSendChunks</mt>
<mt>pmSctpStatReassembledUserMsg</mt>
<mt>pmSctpStatRecChunks</mt>
<mt>pmSctpStatRecChunksDropped</mt>
<mt>pmSctpStatReceivedControlChunks</mt>
<mt>pmSctpStatReceivedPackages</mt>
<mt>pmSctpStatRetransChunks</mt>
<mt>pmSctpStatSentChunks</mt>
<mt>pmSctpStatSentChunksDropped</mt>
<mt>pmSctpStatSentControlChunks</mt>
<mt>pmSctpStatSentPackages</mt>
<mv>
<moid>ManagedElement=1,TransportNetwork=1,Sctp=1</moid>
<r>6</r>
<r>17</r>
<r>10</r>
<r>19</r>
<r>0</r>
<r>12</r>
<r>13</r>
<r>19</r>
<r>0</r>
<r>0</r>
<r>0</r>
<r>11815</r>
<r>0</r>
<r>0</r>
<r>18904</r>
<r>5303976</r>
<r>21</r>
<r>6346369</r>
<r>9360827</r>
<r>2</r>
<r>6567878</r>
<r>0</r>
<r>4843224</r>
<r>10066507</r>
</mv>
</mi>
</md>
</mdc>
私はPythonでのXML構文解析にかなり新しいですし、xml.etree.ElementTreeで遊んでてきたが、私は多くの幸運を持っていないです。誰かが方向を教えてくれますか?いくつかの読書の後にそう
と私はXMLを解析することができる午前実験 - 輸入xml.etree.ElementTree ET
としてtree = ET.parse('sb_meyer.xml') #------ Name of file
root = tree.getroot()
test = tree.findall('.//md')
print (len(test))
d = test[1].findall('.//')
print (d)
type(d)
2
[<Element 'neid' at 0x0000000005844958>, <Element 'neun' at
0x000000000587CEA8>, <Element 'nedn' at 0x00000000058757C8>, <Element
'nesw' at 0x00000000058758B8>, <Element 'mi' at 0x0000000005875778>,.....]
質問今、私は要素NEID、のNeuNなどの値にアクセスする方法にある
可能な重複[どのように私はXを解析んを見つけるために、下記のような何かを行うことができますML in Python?](https://stackoverflow.com/questions/1912434/how-do-i-parse-xml-in-python) –
の指示は、ドキュメントと '' xml.etree.ElementTree'の例を調べることです' –
okはいくつかのものを試しました。あなたが推奨するものを使用して - xml.etree.ElementTree – ssharma