最近在处理一份数据,初一看,这是xml格式,果断百度如何用Python解析xml,感觉甚是高大上。但是,细节决定成败啊,通过解析时遇到的bug发现,这数据竟不是标准的xml,原因有二:
1.tag的属性值应该用双引号引上,但是这份数据没有。举个栗子:
正确:<seg id="123">
错误:<seg id=123>
这样在用xml.etree.ElementTree解析的时候是会报错的,会指出是‘’不好的格式‘’。
2.tag不封闭,举例就是只有<seg>
而没有</seg>
。
起初发现问题1的时候,我还天真的要修正这份数据,把tag的属性值的双引号补上,于是有了下面这段代码(顺便学了一点re)
'''这是部