我正在使用Pyxb解析一些XML,并且XML中没有必需的属性。我抓住了MissingAttributeError异常,它告诉我:
Instance of <class 'TestXML.TEST.CTD_ANON_27'> lacks required attribute how
我的问题是,即使XML数据中缺少必需的属性,有没有办法仍然解析这个XML数据,即使这个属性丢失了?其余的XML数据是有效的,仍然有用。
答案 0 :(得分:0)
你可以disable validation。类似下面的内容(摘自测试套件):
xmls = '<Element/>'
pyxb.RequireValidWhenParsing(True)
self.assertRaises(MissingAttributeError, CreateFromDocument, xmls)
pyxb.RequireValidWhenParsing(False)
self.assertFalse(pyxb._ParsingRequiresValid)
instance = CreateFromDocument(xmls)
请注意,PyXB不支持处理无效文档,因此生成的绑定可能无法完全反映XML的内容。