使用python、elementtree、xml解析器来获取由于某种原因无法工作的属性?

2024-04-25 12:08:05 发布

您现在位置:Python中文网/ 问答频道 /正文

我不熟悉python和解析xml,但我在处理一个特定的xml文件时遇到了麻烦,这个文件是由我所使用的程序抛出的。我尝试使用python和elementtree解析这个xml文件,以便提取url数据(下面的url是假的)。你知道为什么这不起作用吗?在

我的python代码:

def xmlTreeParser(fileName,attribute,tagName):
tree = ET.parse(fileName)
root = tree.getroot()

attribArray = [element.attrib[attribute] for element in root.findall(tagName)]
print attribArray

xmlTreeParser("xml_file.xml",'text','Expr')

我的xml文件:

^{pr2}$

我编写的python可以在我自己编写的另一个测试xml文件上正常工作。我不知道为什么我不能解析这个特定的xml块。谢谢大家。在


Tags: 文件数据代码程序treeurlattributeroot
1条回答
网友
1楼 · 发布于 2024-04-25 12:08:05

对于您进行的特定调用,您需要添加以下语法以到达标记Exprdoc):

xmlTreeParser("xml_file.xml",'text','.//Expr')

但是,您的Xml并没有像文本这样的所有属性,您应该防止这样的错误:

^{pr2}$

相关问题 更多 >