当前位置: 移动技术网 > IT编程>脚本编程>Python > UnicodeEncodeError:'latin-1' codec can't encode characters in position 0-1: ordinal not in range(256)

UnicodeEncodeError:'latin-1' codec can't encode characters in position 0-1: ordinal not in range(256)

2019年05月01日  | 移动技术网IT编程  | 我要评论

七年情殇,贾乃亮晒妻女美照,龙华百客门

scrapy爬虫向数据库写入数据时报错:

unicodeencodeerror:'latin-1' codec can't encode characters in position 0-1: ordinal not in range(256) 

解决方案:

1.我使用的是sqlalchemy,在create_engine()中添加charset=utf8和encoding='utf-8’

engine = create_engine(mysql+mysqldb://”root:123456@127.0.0.1:3306/test?charset=utf8”,encoding=”utf-8”)

2.修改mysql配置文件

1.获取root权限

sudo -i

2.进入配置文件所在路径

cd /etc/mysql/mysql.conf.d

3.备份

cp -p mysqld.cnf mysqld.cnf.bak

4.用vim打开mysqld.cnf,添加以下内容

mysqld
character_set_server = utf8

5.重新加载配置文件

/etc/init.d/mysql reload

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网