使用类解析XML

问题描述 投票:0回答:2

这是我的代码的一部分:

class MyXmlParser(object):
    ...
def parseXML(self):

    if self.attrib:
      ...

但是有了这个,我在第一行就出现了错误:AttributeError:'MyXmlParser'对象没有属性'attrib'。

我真的不确定如何解决这个问题。谢谢。

python
2个回答
0
投票

问题是你没有访问etree上的属性,但是在你的类中,所以我改变了代码来迭代你的变量doc上解析的数据,并使用你的代码打印带有属性的元素,为此目的如下代码完成工作:

import xml.etree.ElementTree as ET


class MyXmlParser(object):

    def parseXML(self):
        for elem in self.doc.iter():
            if elem.attrib:
                ...

还将etree的导入更改为负责解析XML文件的ElementTree


0
投票

你正在调用你班级的未知属性。定义它,它应该工作。

Self.attrib是指当前对象(您的解析器)的属性attrib,它从未定义或初始化。

© www.soinside.com 2019 - 2024. All rights reserved.