EncodeError: 'latin-1' codec can't encode characters in position 69-70: ordinal not in r

Posted 爱吃醋的工程师

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了EncodeError: 'latin-1' codec can't encode characters in position 69-70: ordinal not in r相关的知识,希望对你有一定的参考价值。

UnicodeEncodeError: ‘latin-1‘ codec can‘t encode characters in position 69-70: ordinal not in range(256)解决办法

使用python3.X向数据库插入中文数据的时候,提示:

大概步骤是:

anjuke_area = (513, ‘平阴‘, ‘http://jinan.anjuke.com‘, ‘2017-03-29 13:17:03‘)

print(‘开始链接数据库‘)
conn = pymysql.connect( host=‘XX.XX.XX.XX‘, port=3306, user=‘root‘, passwd=‘root123‘, db=‘数据库名称‘)
print(‘链接数据库成功‘)
cur = conn.cursor()

cur.execute("INSERT INTO anjuke_area(id, name, link, time) VALUES (%s,%s,%s,%s)",anjuke_area)

然后提示:

UnicodeEncodeError: ‘latin-1‘ codec can‘t encode characters in position 69-70: ordinal not in range(256)


实际解决问题的办法是。。。。。:

conn = pymysql.connect( host=‘XX.XX.XX.XX‘, port=3306, user=‘root‘, passwd=‘root123‘, db=‘数据库名称‘, charset="utf8")

最后增加一个 :    , charset="utf8"    就好了

以上是关于EncodeError: 'latin-1' codec can't encode characters in position 69-70: ordinal not in r的主要内容,如果未能解决你的问题,请参考以下文章

python mysql数据库 'latin-1' codec can't encode character错误问题解决

kombu.exceptions.EncodeError:用户不是 JSON 可序列化的

'latin-1' codec can't encode characters……

Python连接数据库异常‘latin-1‘ codec can‘t encode characte

UnicodeEncodeError: 'latin-1' codec can't encode characters in position 0-3: ordinal not

[已解决]报错:UnicodeEncodeError: 'latin-1' codec can't encode characters in position 80-81(代码