zoukankan      html  css  js  c++  java
  • Python爬取中文页面的时候出现的乱码问题(续)

    我在上一篇博客中说明了在爬取数据的时候,把数据写入到文件的乱码问题

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

    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 

  • 相关阅读:
    npm --save-dev 与 --save 的区别
    Vue 简单实例 购物车2
    Vue 简单实例 购物车1
    node.js富文本编辑器
    使用jquery操作session
    浏览器窗口之间传递数据
    批量修改文件编码格式
    具有动态效果的响应式设计
    Ajax请求全局配置
    html实体转换
  • 原文地址:https://www.cnblogs.com/lianliang/p/5262748.html
Copyright © 2011-2022 走看看