gpt4 book ai didi

python - 插入 MySQL 时出现 Unicode 错误

转载 作者:行者123 更新时间:2023-11-29 00:38:08 26 4
gpt4 key购买 nike

我有一个脚本可以将随机网页的内容存储到 mysql 数据库 ( MySQLdb ) 中。对于某些页面,我得到:

...
File "/usr/lib/python2.7/dist-packages/MySQLdb/connections.py",
line 264, in literal
return self.escape(o, self.encoders)
File "/usr/lib/python2.7/dist-packages/MySQLdb/connections.py",
line 202, in unicode_literal
return db.literal(u.encode(unicode_literal.charset))

UnicodeEncodeError: 'latin-1' codec can't encode character
u'\u203a' in position 172550: ordinal not in range(256)

当我使用 sqlite3 时,我对此没有任何问题。

我试过这个,没有成功:

CREATE DATABASE the_base CHARACTER SET utf8

问题:如何正确地编码/解码数据以便将其存储在数据库中而不会出现任何问题

附言python下的字符编码是一个永无止境的故事……

已解决

connect 方法添加了编码:

MySQLdb.connect( ... charset='utf8', use_unicode=True )

最佳答案

您不能将随机 unicode 存储在只有约 256 个可能条目(即 latin-1)的编码中。将数据库中的编码更改为例如utf-8,你应该可以开始了。

关于python - 插入 MySQL 时出现 Unicode 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13422806/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com