我有以下格式的XML文件,遍历:Python中通过不同的XML标签
<commands>
<command name = "">
<data byte=""></data>
</command>
</commands>
<registers>
<register name = "">
<mask name =""></mask>
</registers>
将寄存器标签前,我可以使用通过没有问题的文件遍历:
for command_data_name in root.findall('command'):
if (command_data_name.get('major') == major_bits and command_data_name.get('minor') == minor_bits):
command_name = command_data_name.get('name')
但现在我得到
xml.etree.ElementTree.ParseError: junk after document element.
显然是由我的注册标签集成。如果我想抓取寄存器信息,这应该看起来如何?
<registers>
<register name="Command">
<bits major_mask="0xFF00000000", right_shift="32", left_shift="0"></bits>
<bits minor_mask="0xFF0000000000", right_shift="40", left_shift="0"></bits>
<bits doorbell_mask="0x1000000000000", right_shift="48", left_shift="0"></bits>
<bits sequence_mask="0xF000000000000000", right_shift="63", left_shift="0"></bits>
</register>
<register name="Status">
<bits mb_comp_mask="0x1", right_shift="0", left_shift="0"></bits>
<bits nonce_mask="0x2", right_shift="1", left_shift="0"></bits>
<bits bos_mask="0xFF", right_shift="3", left_shift="0"></bits>
<bits status_code_mask="0xFF00", right_shift="12", left_shift="0"></bits>
</register>
</registers>
是完整的xml吗? –
我有很多同样的东西被复制,所以基本上,是的。 – Ryan