ElementTree解析错误,因为撇号“'”(没有XML声明)

时间:2013-01-03 23:51:14

标签: python xml encoding elementtree

我正在使用ElementTree查看MySQL记录并解析存储的XML而不进行任何声明。我知道文本编码有问题,但我不知道如何解决这个问题。我得到的错误是:

xml.parsers.expat.ExpatError: not well-formed (invalid token): 

我已经尝试过s.decode(“CP1252”)。encode(“UTF-8”)和一个简单的s.replace(“'”,“”)但是没有帮助(其中s是XML的记录)。我还在这些转换之前和之后打印了字符串,只是为了看到在打印时,字符在转换之前和之后显示为“?”。我希望看到它在替换后消失(“'”,“”),但事实并非如此。

有什么想法吗?

谢谢!

” EDIT ::

我正在使用字符串与使用MySqlDb复制问题,但它没有产生错误。默认情况下,MySQLDb不是UTF-8编码的,因此必须在数据库连接中指定。一旦我将'init_command ... ... utf8'添加到我的连接的末尾,它就能够解释撇号并将其​​包含在我查询的REPLACE(column_with_xml,“'”,“”)部分中。 / p>

conn = MySQLdb.Connection(db=config.mydb['mydb'], host=config.mydb['host'], port=config.mydb['port'], user=config.mydb['user'], passwd=config.mydb['password'], init_command='SET NAMES utf8',charset='utf8')

0 个答案:

没有答案
相关问题