scrapy 中文乱码与utf-8
2016-08-12
记录一下刚才解决的有关scrapy中文乱码问题。
之前在mac上运行scrapy的时候没有关心过这一点,可能是系统默认字符就是utf-8。搬到linux服务器上之后会出现如下的错误。1UnicodeEncodeError: 'latin-1' codec can't encode characters in position 96-106: ordinal not in range(256)
而字符串会变成这样。1u'\u98ce\u6b66\u0416\u9f99\u884c'
经过查找资料和测试,需要修改的地方有两个。一是建表的时候,需要在create table之后加上1DEFAULT CHARACTER SET = utf8
二是在连接到数据库时,在MySQLdb.connect里加上1charset ='utf8'
执行这两步后,即可正常显示中文。
————————–BTW————————–
在做php显示的时候也遇到了乱码的问题,就不另开贴了。在连接到数据库后加上下面的语句即可。1mysqli_set_charset($conn,"utf8");