您的位置:首页 > 编程语言 > Python开发

Python爬取中文页面的时候出现的乱码问题(续)

2016-03-10 17:32 519 查看
我在上一篇博客中说明了在爬取数据的时候,把数据写入到文件的乱码问题

在这一篇里面我做一个总结:

1、首先应该看一个案例

我把数据写在.py文件中:

#coding:utf-8

s = 'hehe测试中文字符'
ss = u'hehe测试中文字符'
uu = s.decode('utf-8')

print s #输出乱码
print uu #正常
print ss #正常

这里需要对中文数据进行编码,输出正常

2、我们针对爬取回来的数据

在读取页面数据的时候已经对其编码 response.read().decode('utf-8')

在把数据写入到数据库的时候,只需要把数据库的连接指定为 utf-8 就可以

MySQLdb.Connect(host=v_host,port=int(v_port),user=v_user,passwd=v_passwd,db=v_db,charset='utf8')

3、可以直接把读取来的数据直接写入到数据库中,不会出现乱码

py文件的其他地方不需要在进行其他的编码,仅仅是在读取response里面的数据的时候进行编码一次

4、在设置Mysql编码的时候切记是:utf8,中间没有横杠

不然会报错:_mysql_exceptions.OperationalError: (2019, “Can’t initialize character set utf-8
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: