如何将stringbyte(原始html字符串)转换为支持Python中的unicode的sqlite3 TEXT

时间:2012-04-03 10:57:21

标签: python unicode utf-8 sqlite

我正在请求网页,并希望将页面数据缓存为原始html字符串。 (首先我转义了数据字符串)我使用 sqlite3 来保存我的数据。当我尝试在字典或元组中给出byte_string,在请求中使用占位符时,它会引发“编程错误”,说要将应用程序转换为使用unicode字符串。我将其保存为SQLITE3 TEXT数据类型。 我试过data.encode(“utf-8”)和编码(“utf-8”)都引发了同样的错误
UnicodeDecodeError:'utf8'编解码器无法解码位置11777中的字节0xf6:无效的起始字节
我知道它包含一个奇怪的角色,这个角色是'ö'。我该如何解决这个问题呢 我是否需要使用sqlite3的 BLOB 数据类型

1 个答案:

答案 0 :(得分:0)

您应.decode使用正确的编码。在这种情况下拉丁语1或CP1252。 »ö«在UTF-8中显然不是0xf6所以它为什么要起作用?