我有一个简单的xml文件,并且正在使用'xml.etree.ElementTree'库,但是在尝试通过xpath表达式查找节点时无法检索节点。
这是xml
<?xml version="1.0" encoding="utf-8"?>
<myEmails>
<note id="1">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
<note id="2">
<to>Tove</to>
<from>Jani</from>
<heading>Reminder</heading>
<body>Don't forget me this weekend!</body>
</note>
<note id="3">
<to>Toves</to>
<from>Janis</from>
<heading>Reminders</heading>
<body>Don't forget me this weekend!</body>
</note>
</myEmails>
我希望能够通过id查找节点,然后遍历每个标签以验证其内容
我已经尝试过了:
import xml.etree.ElementTree as ET
tree = ET.parse(xmlFile)
root = tree.getroot()
e = tree.findall("./myEmails/note[@id='1']")
for i in e:
print (i.text)
e = root.findall("./myEmails/note[@id='1']")
for i in e:
print (i.text)
无论哪种方式,我都不打印任何内容,并且在打印表达式时
print (tree.findall("./myEmails/note[@id='1']"))
print (root.findall("./myEmails/note[@id='1']"))
我只得到一个空白的方括号[]
我想念什么?使用python在XML文件中查找信息的正确方法是什么?
非常感谢