1
我是使用lxml和python的新手,並且我無法按照我的方式解析和xml文件。我已經四處搜尋,似乎無法找到任何解釋得很好的東西。我需要做的是迭代雖然具有固定值的父級下的子元素。使用lxml從具有給定值的父項的子項獲取值
例如:我需要遍歷名稱「變量」下的所有元素,但僅在id =「VTBRA」的站點下方。
<station id="VTBRA" name="RT 7 Brandon" elev="407" lat="43.76728" lon="-73.05017" distance="" provider="VTRANS">
<ob time="16 Feb 7:30 am EST">
<variable var="T" description="Temp" unit="F" value="9"/>
<variable var="RH" description="Relh" unit="%" value="81"/>
<variable var="FF" description="Wind" unit="mph" value="1"/>
<variable var="DD" description="Direction" unit="deg" value="85"/>
<variable var="DDCARD" description="Wind Card" unit="direction" value="E"/>
<variable var="FFGUST" description="Gust" unit="mph" value="4"/>
<variable var="VV" description="Visibility" unit="miles" value="3.68"/>
<variable var="STAQUAL" description="Station Quality" unit="" value="OK"/>
我目前修改代碼片段是這樣的:
在node.getiterator( '站')ELT: 提供商= elt.get( '提供商','未知「)
for elt in node.getiterator('variable'):
if elt.get('var', 'Unknown') == "T":
print elt.get('value','Unknown')
此代碼遍歷‘可變的’內部和與‘VTBRA’的id站以外的所有實例。有沒有一個參數或者可以添加的東西來讓迭代器只循環選定站點ID下面的變量標籤?或者我應該完全是一個不同的功能?
任何幫助非常感謝! 謝謝!