我有一个脚本,将随机网页的内容存储到 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下的PS字符编码是一个永无止境的故事……
解决了
为方法添加了编码connect
:
MySQLdb.connect( ... charset='utf8', use_unicode=True )