Python UnicodeEncodeError

时间:2013-08-19 14:58:21

标签: python mysql database python-2.7 python-unicode

我正在尝试使用此语句将一些数据插入到MySQL数据库中:

INSERT INTO tweets(tweeter,tweet)VALUES ('Lord_Sugar','RT @BTSport: This cerebral figure succeeds in insulting everyone’s intelligence. @CalvinBook looks at Kinnears impact on #NUFC http://t.…')

但是我收到了这个错误:

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

我知道它在谈论哪个角色 - 在推文结束时它的'...',但不知道如何绕过它。

1 个答案:

答案 0 :(得分:5)

我猜你正在使用MySQLDb进行连接。

如果是这样,则应在连接字符串中使用charset和use_unicode参数。 MySQLdb默认使用Latin-1:

import MySQLdb    
dbcon = MySQLdb.connect(user="root",db="twitter",use_unicode=True,charset='UTF8')