2017-05-31 105 views
1

XML代碼是這樣的如何使用fromString通過ElementTree使用python進行xml解析?

<foo> 
<bar key="value">text</bar> 
</foo> 

Python代碼是:

import xml.etree.ElementTree as ET 
xml=ET.fromstring(contents) 
xml.find('./bar').attrib['key'] 

輸出: '值'

什麼必須放在內容代替上述的Python代碼的獲取價值作爲輸出?

如果我只寫內容,它會給出一個錯誤,因爲內容沒有定義。

+0

如果我在內容中寫入整個大xml文件,仍然會彈出該行中存在語法錯誤。 – Nikhil

回答

1

如果XML是作爲triple-quoted string提供的,它就可以工作。這允許您在字符串中包含未轉義的引號。

import xml.etree.ElementTree as ET 

contents = """ 
<foo> 
<bar key="value">text</bar> 
</foo>""" 

xml = ET.fromstring(contents) 
print xml.find('./bar').attrib['key']