Python3 报错'latin-1' codec can't encode character 解决方案
Python3 报错'latin-1' codec can't encode character 解决方案
在更新数据库操作时,报错:
UnicodeEncodeError: 'latin-1' codec can't encode character '\uff08' in position 21: ordinal not in range(256)
在百度后得到三种解决方法,其中个人认为第三种最方便。
1. 处理字符串
代码省略
2. 设置数据库编码
一种方法是在连接数据库时设置
db.set_charset('utf-8')
cursor.execute('SET NAMES utf8;')
cursor.execute('SET CHARACTER SET utf8;')
cursor.execute('SET character_set_connection=utf8;')
然而我在用了这种方法后是没有用的。
另外一种设置数据库编码的方式是更改配置文件。
可以通过
db.set_charset('utf-8')查询数据库编码windows更改数据库编码
1、在mysql的安装目录下找到my.ini文件(如果没有的话就把my-medium.ini复制,然后重命名为my.ini即可)在mysql5.7中是my-default文件。
2、在my.ini文件中找到[client]和[mysqld]字段,在下面均加上default-character-set=utf8,保存并关闭
3、重启mysql服务
Linux更改数据库编码
- mysql 5.5版本下
- 打开配置文件,我的配置文件是在 /etc/mysql/my.cnf
- 在[client]和[mysqld]字段下面均添加default-character-set=utf8,保存并关闭
- 重启mysql服务
- mysql 5.5版本以上
打开配置文件,我的配置文件是在 /etc/mysql/my.cnf
[mysqld]下添加:
character-set-server=utf8
collation-server=utf8_general_ci
重启mysql服务
设置成功后的编码

3.在连接数据库时设置参数
db = pymysql.connect("localhost","root","00000000","TESTDB" ,use_unicode=True, charset="utf8")
设置use_unicode 和charset参数
参考博客:
https://blog.csdn.net/wanglingxxx/article/details/52049278
Python3 报错'latin-1' codec can't encode character 解决方案的更多相关文章
- 关于编码问题,报错:'gbk' codec can't encode character '\u3164' in position 0: illegal multibyte sequence
之前经常在写入文件的时候遇到这种报错, 'gbk' codec can't encode character '\u3164' in position 0: illegal multibyte seq ...
- python 格式化时间含中文报错: 'locale' codec can't encode character '\u5e74'
执行下面代码报错: UnicodeEncodeError: 'locale' codec can't encode character '\u5e74' in position 2: Illegal ...
- python中time.strftime不支持中文,报错UnicodeEncodeError: 'locale' codec can't encode character '\u5e74' in position 2: encoding error
使用time.strftime将 "2020-10-10 10:10:10" 转化为 2020年10月10日10时10分10 报错: import time timestr=&q ...
- 解决python编码问题报错:'ascii' codec can't encode characters in position 0-15: ordinal not in range(128)
这个问题很奇怪,在服务器上执行一个写数据库的python文件,正常执行,但是使用java的ssh进行调用脚本,发现就是不执行数据库的写入,然后使用了try except的方式,打印了错误信息,发现报错 ...
- 爬取网页内容后写入文件报错UnicodeEncodeError: 'gbk' codec can't encode的问题解决方案
老猿使用如下代码读取网页内容: req = urllib.request.Request(url=url,headers=header) text = urllib.request.urlopen(r ...
- python+selenium运行报错UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-1: ordinal not in range(128)
使用python+selenium运行自动化脚本时,打印某一段文字出现UnicodeEncodeError: 'ascii' codec can't encode characters in posi ...
- python 编码报错问题 'ascii' codec can't encode characters 解决方法
python在安装时,默认的编码是ascii, 当程序中出现非ascii编码时,python的处理常常会报这样的错 'ascii' codec can't encode characters pyth ...
- pip安装requests报错unicodeEncodeError:'ascii' codec can\t encode charactesers in position 9-12:ordinal not in range(128)
前提 : 已经安装pip(pip的安装我参考的是本博客转载脚本之家的步骤,实验可以成功) 1. 在cmd输入命令转到pip安装目录: 2. 运行后出现错误 3. 步骤2中的错误应该和编码有关.搜索百度 ...
- python报错“UnicodeEncodeError: 'ascii' codec can't encode characters in position 22-26: ordinal not in range(128)”问题解决
方案是在python的Lib\site-packages文件夹下新建一个sitecustomize.py,内容为: # encoding=utf8 import sys reload(sys) sys ...
随机推荐
- Duration和Period的区别--通俗易懂
在jdk1.8以后,对表示日期时间的类型进行了重新分类,这里出现了2个新的类,Duraction 和Period Duraction表示:时间的区间,用来度量秒和纳秒之间的时间值 Period表示:一 ...
- Redis 的基本操作、Key的操作及命名规范
Redis基本操作 查看数据的状态 pong redis 给我们返回 PONG,表示 redis 服务 运行正常 redis 默认用 使用 16 个 库 • Redis 默认使用 16 个库,从 0 ...
- centos7安装oracle11g(根据oracle官方文档安装,解决图形界面安装问题)
一.系统及安装包 操作系统:centos 7.4 oracle版本:oracle 11g r2 二.centos环境配置 安装数据库所需要的软件包 [root@localhost data]# yum ...
- C++ 相关问题记录
目录 编译链接 使用初始化和使用赋值时,调用的函数不同:使用 auto_ptr() 时可能会出现编译错误 宏定义不受命名空间的约束 Switch-case 中不能定义变量 技巧/注意项 多层继承中基类 ...
- Gitlab Runner实现CI/CD自动化部署asp.net core应用
环境说明 一台git服务器(192.168.169.7),安装gitlab,docker. 一台web服务器(192.168.169.6),安装git,gitlab runner,docker,dot ...
- .net SHA-256 SHA-1
Framework 4.5 uses SHA-256 algorithm for the signature, and 4.0 uses SHA-1.
- 本地安装SQL Server 2017 Express和Microsoft SQL Server Management Studio 18.1
sqlserver下载链接:https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 这个安装的是免费版的Express,当然也可 ...
- 错误 4 error C2039: “Sleep”: 不是“boost::this_thread”的成员
检查是否是在x64下运行的. #include <pcl/io/openni2_grabber.h> #include <pcl/visualization/cloud_viewer ...
- 基于socket.io客户端与服务端的相互通讯
socket.io是对websocket的封装,用于客户端与服务端的相互通讯.官网:https://socket.io/. 下面是socket.io的用法: 1.由于使用express开的本地服务,先 ...
- Microsoft Word (2016) Deceptive File Reference ZDI-CAN-7949
[+] Credits: John Page (aka hyp3rlinx) [+] Website: hyp3rlinx.altervista.org[+] Source: http://hyp3 ...
