utf-8 python 乱码prinnt u_python处理一些乱码的中文文本时decode('utf-8')报错的处理
用python写脚本时,遇到处理中文(乱码的中文)时,用decode('utf-8')会发现始终会报错
>>> txt_from = open('/home/love/ex130705.log')
>>> txt_from_iter= iter(txt_from)
>>> txt_proc = txt_from_iter.next().decode('utf-8', 'ignore')
Traceback (most recent call last):
File "/tmp/py4049kjX", line 41, in
txt_proc = txt_from_iter.next().decode('utf-8')
File "/usr/lib/python2.7/encodings/utf_8.py", line 16, in decode
return codecs.utf_8_decode(input, errors, True)
UnicodeDecodeError: 'utf8' codec can't decode bytes in position 84-85: invalid continuation byte
欲处理的原文件中部分显示为乱码:
2013-07-05 04:20:10 192.168.1.5 GET /Portals/0/鏁欒偛淇℃伅鏂囦欢澶 校园 80 - 25.XXX.10.99 Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+5.1;+Trident/4.0;+Alexa+Toolbar) 404 0 2 234
2013-07-05 04:20:24 192.168.1.5 GET /Portals/0/鏁欒偛淇℃伅鏂囦欢澶 校园 80 - 25.XXX.10.99 Mozilla/4.0+(compatible;+MSIE+8.0;+Windows+NT+5.1;+Trident/4.0;+Alexa+Toolbar) 404 0 2 296
这些显示乱码的中文字符是IIS在记录日志过程中出现的。python通过decode('utf-8')解码为UTF-8时会抛出异常UnicodeDecodeError。
解决:用 decode('utf-8', 'ignore')
>>>
>>> txt_proc = txt_from_iter.next().decode('utf-8', 'ignore')
>>>
查看decode的帮助:
help("".decode)
decode(...)
S.decode([encoding[,errors]]) -> object
Decodes S using the codec registered for encoding. encoding defaults
to the default encoding. errors may be given to set a different error
handling scheme. Default is 'strict' meaning that encoding errors raise
a UnicodeDecodeError. Other possible values are 'ignore' and 'replace'
as well as any other name registered with codecs.register_error that is
able to handle UnicodeDecodeErrors.
utf-8 python 乱码prinnt u_python处理一些乱码的中文文本时decode('utf-8')报错的处理相关推荐
- python中文乱码 def decode-python处理一些乱码的中文文本时decode('utf-8')报错的处理...
用python写脚本时,遇到处理中文(乱码的中文)时,用decode("utf-8")会发现始终会报错 >>> txt_from = open("/ho ...
- python处理一些乱码的中文文本时decode('utf-8')报错的处理
2019独角兽企业重金招聘Python工程师标准>>> 用python写脚本时,遇到处理中文(乱码的中文)时,用decode('utf-8')会发现始终会报错 >>> ...
- python导入类有红线_python踩坑系列之导入包时下划红线及报错“No module named”问题...
python踩坑系列之导入包时下划红线及报错"No module named"问题 使用pycharm编写Python时,自己写了一个包(commontool),在同级另一个路径下 ...
- 通俗易懂地解决中文乱码问题(2) --- 分析解决Mysql插入移动端表情符报错 ‘incorrect string value: '\xF0......
原文:[原创]通俗易懂地解决中文乱码问题(2) --- 分析解决Mysql插入移动端表情符报错 'incorrect string value: '\xF0... 这篇blog重点在解决问题,如果你对 ...
- selenium+python,解决selenium弹出新页面,无法定位元素的问题(报错:Unable to locate element:元素)
selenium+python,解决selenium弹出新页面,无法定位元素的问题(报错:Unable to locate element:元素) 参考文章: (1)selenium+python,解 ...
- python代码下出现红线_python踩坑系列之导入包时下划红线及报错“No module named”问题...
python踩坑系列之导入包时下划红线及报错"No module named"问题 使用pycharm编写Python时,自己写了一个包(commontool),在同级另一个路径下 ...
- 已解决Python向数据库插入数据的字符串中含有单引号或双引号报错
已解决Python向数据库插入数据的字符串中含有单引号或双引号报错:(102, b"Incorrect syntax near 'S'.DB-Lib error message 20018, ...
- Python + wordcloud + jieba 十分钟学会用任意中文文本生成词云
前述 本文需要的两个Python类库 jieba:中文分词分词工具 wordcloud:Python下的词云生成工具 写作本篇文章用时一个小时半,阅读需要十分钟,读完该文章后你将学会如何将任意中文 ...
- python jupyter notebook运行没反应_jupyter notebook运行命令没有反应,右上报错这个
有没有哪位 大佬知道这个该怎么解决呀,萌新一枚初学python,弄了一整天了 都还没有弄好 自己 也按照网上说的都做了都没用,也重新安装过了,还是报错 全部的内容是这样的 Traceback (mos ...
最新文章
- 机器学习样本标记 示意代码
- 【Linux 内核 内存管理】Linux 内核堆内存管理 ② ( 动态分配堆内存方式 | brk 系统调用 | mmap 系统调用 | brk 系统调用源码介绍 )
- (十六)spring cloud微服务分布式云架构-集成项目简介
- Boost Asio总结(7)class strand
- Mybatis 拦截器
- python编辑器_没有人比它更懂少儿编程,慧编程Python'吮指编辑器'
- Unity应用架构设计(10)——绕不开的协程和多线程(Part 1)
- 2017.8.7 数学作业 思考记录
- 每天坚持跑步到底会不会瘦呢?
- 此版本的visual studio无法打开下列项目_深度学习实现高精度钢琴曲转谱Piano transcription项目简明使用教程...
- 【Vegas2006】8月11日-咖啡生活
- 陆上物探测量基本理论之一---高程
- 刘华:上云还是不上云,这是一个问题
- 安卓Web Service实现天气预报功能
- HTML吸引人眼球的网页,优秀网页设计:35个吸引眼球的精美作品集网站
- 软件构造之抽象相关知识总结
- qq、微信、微博的svg小图标
- 在JavaScript中实现商品图片的局部放大(放大镜)
- WIN7电脑如何共享WiFi
- 安装centos7系统 服务器安装系统
热门文章
- 从底层谈webgis原理设计与实现(九)WebGIS中的矢量查询(针对AGS和GeoServer)
- wdcp v2.5.15 php版本,wdcp_v2.5.15(20150826) 如何开启 多 SSL 站点!
- 活动回顾|ShardingSphere X openGauss,将会产生怎样的化学反应?
- 工程伦理--13.4 临平净水厂化解“邻避效应”的对策
- python解压 tar.gz文件
- 江湖问题研究-- intent传递有没有大小限制,是多少?
- 用 Python 从 GFF3 格式文件中查找注释信息
- java Map的知识点
- HR 开发技术(abap 转载)
- 用泰勒公式实现Sin(x)函数的值计算