python mysqldb 数据库插入中文 “"UnicodeEncodeError:'latin-1' codec can't encode character ..."”
2016-04-15 10:43
633 查看
前端时间从网上爬取了14000+的育儿知识,尝试入库mysql的时候报如下的错误:
"UnicodeEncodeError:'latin-1' codec can't encode character ..."
其中,入库的python脚本已将默认编码设置为utf-8
[python] view
plain copy
default_encoding = 'utf-8'
reload(sys)
sys.setdefaultencoding(default_encoding)
网上给出的原因为,mysqldb的默认编码为latin-1,而有些utf-8编码的字符无法通过latin-1 编码,为此改变mysqldb的默认编码为utf-8:
[python] view
plain copy
db.set_character_set('utf8')
dbc.execute('SET NAMES utf8;')
dbc.execute('SET CHARACTER SET utf8;')
dbc.execute('SET character_set_connection=utf8;')
"UnicodeEncodeError:'latin-1' codec can't encode character ..."
其中,入库的python脚本已将默认编码设置为utf-8
[python] view
plain copy
default_encoding = 'utf-8'
reload(sys)
sys.setdefaultencoding(default_encoding)
网上给出的原因为,mysqldb的默认编码为latin-1,而有些utf-8编码的字符无法通过latin-1 编码,为此改变mysqldb的默认编码为utf-8:
[python] view
plain copy
db.set_character_set('utf8')
dbc.execute('SET NAMES utf8;')
dbc.execute('SET CHARACTER SET utf8;')
dbc.execute('SET character_set_connection=utf8;')
相关文章推荐
- Python小模块--StringIO
- python中__str__和__repr__的区别
- Python知识结构
- Selenium2 Python 自动化测试实战学习笔记(五)
- Numpy与Pandas排序
- Python的网页下载器:urllib2.urlopen
- Python -- 大小写转换
- rm: 无法删除"/mnt/cdrom/Packages/python-configobj-4.6.0-3.el6.noarch.rpm": 只读文件系统
- python开发笔记
- 将 Sublime 3 打造成 Python/Django IDE
- python Virtual Environments
- Python异步通信模块asynchat
- Python进阶---函数式编程简介
- Python异步通信模块asyncore
- Python---数据类型和变量.练习题.请打印出以下变量的值
- 说一说Python logging
- Python Web框架Tornado运行和部署
- Python编程习惯
- python编程之import篇
- python调用caffe模型进行classify时读入mean文件错误:mean shape incompatible with input shape