scrapy爬虫录入mysql中文乱码的解决

  scrapy爬取item后,我们可以用pipeline.py把item录入到mysql数据库里

  编写pipeline.py定义一个类,这个类就是用来录入数据库的,记得在setting.py里的item_pipelines={......}里加上这个类的路径,然后可以在setting里写数据库连接的ip,端口,用户名,密码,数据库  有多种写法,有的是依次定义他们,比如,MYSQL_USER='root' ,有的可以把上面几个东西写成一串url,在pipeline.py里解析

  很好,可是发现把中文录入到数据库的时候,是乱码的,~~~~~~~

       然后百度到了这个博客:

   https://blog.csdn.net/u012410733/article/details/61619656/

  所以,我们可以把mysql字符集设置成utf8,

  修改/etc/mysql/my.cnf   :

  

[mysqld]
character-set-server=utf8 
[client]
default-character-set=utf8 
[mysql]
default-character-set=utf8

重启mysql   $ etc/init.d/mysql restart

进入mysql> show variables like '%char%';

可以看到设置更改为了utf8

 

还有,比如我们在mysql建表的时候,可以指定字符集为utf8 Navicat就有这个选项,很方便

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

好吧,一点也不方便~~~~~~

 

posted @ 2018-07-17 14:39  Richard56  阅读(890)  评论(0编辑  收藏  举报