我有一个XML文件,名为xmltest.xml
:
<?xml version="1.0" encoding="GBK"?>
<productMeta>
<bands>1,2,3,4</bands>
<imageName>TestName.tif</imageName>
<browseName>TestName.jpg</browseName>
</productMeta>
我有一个Python伪代码:
import xml.etree.ElementTree as ET
xmldoc = ET.parse('xmltest.xml')
但它引发了一个ValueError
:
ValueError: multi-byte encodings are not supported
我理解这个错误,它产生的原因是XML文件第一行的编码声明。XML文件是UTF-8编码的,但总是有那个声明(我不是要分析的XML文件的创建者)。在解析XML文件时,如何避免这样的编码声明?
在python中处理xml excel时解决了我的问题
我尝试过的一件事,对我有效的是将
xml
文件作为文件对象打开,然后使用ElementTree.fromstring()
传递文件的完整内容。示例-
您还可以使用所需的编码创建一个
XMLParser
,这将使您能够解析该编码中的字符串,例如-相关问题 更多 >
编程相关推荐