1. 由于使用Python Selenium做网页自动化测试时,有截取网页上的中文信息保存到测试结果中,最终出现编码错误如下:

File "D:/PycharmProjects/AutoTest/TestZone/RunTest.py", line 25, in <module>
runner.run(discover)
File "D:\PycharmProjects\AutoTest\Base\HTMLTestRunner.py", line 631, in run
self.generateReport(test, result)
File "D:\PycharmProjects\AutoTest\Base\HTMLTestRunner.py", line 678, in generateReport
report = self._generate_report(result)
File "D:\PycharmProjects\AutoTest\Base\HTMLTestRunner.py", line 745, in _generate_report
test_list = ''.join(rows),
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6 in position 84: ordinal not in range(128)

2.   百度了多种方案,通过设置默认的编码格式可解决,通过如下代码:

1 import sys
2 reload(sys)
3 sys.setdefaultencoding('utf-8')

设置默认编码的时候可能提示sys模块不存在'setdefaultencoding'

sys.setdefaultencoding('utf-8')
Traceback (most recent call last):
File "<input>", line 1, in <module>
AttributeError: 'module' object has no attribute 'setdefaultencoding'

这是因为python2.5以后的版本已经移除了'setdefaultencoding',通过reload(sys)即可重新加载出'setdefaultencoding'。

 3.  问题原因:

Pyhton2.x版本中,默认情况下,Python采用的是ascii编码方式,如下所示:

而Python在进行编码方式之间的转换时,会将 unicode 作为“中间编码”,但 unicode 最大长度为 128 ,

当尝试将 ascii 编码字符串转换成"中间编码" unicode 时,如果字符串超出了其范围,就抛出了如上错误。

转载于:https://www.cnblogs.com/bozhou/p/6755988.html

Python HTMLTestRunner生成网页自动化测试报告时中文编码报错UnicodeDecodeError: 'ascii' codec can't decode byte 0xe6...相关推荐

  1. python报错UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xe8 in position 0 解决方案

    python报错UnicodeDecodeError: 'ascii' codec can't decode byte 0xe8 in position 0 解决方案 参考文章: (1)python报 ...

  2. Python报错UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe0 in position 0: ordinal not in range

    Windows 7机器上安装Python2.7后,下载一些Package包进行setup时总是报错UnicodeDecodeError,如下: File "C:\Python27\lib\m ...

  3. 【错误记录】PyCharm 运行 Python 程序报错 ( UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xe5 in positio )

    文章目录 一.报错信息 二.解决方案 一.报错信息 PyCharm 运行 Python 程序报错 : D:\002_Project\011_Python\APK\venv\Scripts\python ...

  4. pandas读取数据时,报错UnicodeDecodeError: 'utf-8' codec can't decode byte 0xce in position 0: invalid contin

    1.我的代码: df_train=pd.read_csv("C:\\Users\\15520\\Desktop\\AI\\阿里天池\\幸福感挖掘\\happiness_train_compl ...

  5. python报错:UnicodeDecodeError: ‘ascii‘ codec can‘t decode byte 0xe0 in position 0: ordinal not in rang

    在执行下面这段代码是,报错:UnicodeDecodeError: 'ascii' codec can't decode byte 0xe0 in position 0: ordinal not in ...

  6. 解决Python报错UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 658: illegal multibyte

    解决Python报错–UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 658: illegal multibyte ...

  7. Python报错UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte

    Python报错UnicodeDecodeError: 'gbk' codec can't decode byte,这个错误是做NLP的小伙伴常见的一个错误,报错原因是读取的文件中有中文. 核心思路: ...

  8. 解决Python打开文件报错UnicodeDecodeError: 'gbk' codec can't decode byte

    用Python打开文件时报错: UnicodeDecodeError: 'gbk' codec can't decode byte 0x80 in position 10: illegal multi ...

  9. python报错UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x97 in position的解决方法

    在编写代码时,调用python解释器中的模块时出现 UnicodeDecodeError: 'gbk' codec can't decode byte 0x97 in position 20: ill ...

最新文章

  1. 【Java】使用单向链表实现一个队列(Queue)
  2. 匹配月份_5月份轿车销量榜单出炉 雅阁热销18634辆
  3. 二维数组的查找,刷题成功——剑指Offer
  4. 这份书单,给那些想学Hadoop大数据、人工智能的人
  5. 设计模式(十)——抽象工厂模式
  6. [C++STL]仿函数用法介绍
  7. [Linux]NAT和代理服务器
  8. Jest 只MOCK模块中的某个功能实现
  9. Delta-wave
  10. access横向求和sum_数据横向、纵向及交叉求和,同事用Alt+=号一键搞定!不需要函数...
  11. 24.docker port
  12. git删除远程提交记录
  13. usb redirector linux,USB Redirector Client详细使用教程
  14. 周公解梦|做梦的解释|鬼压床|为什么会做梦
  15. 传奇gom引擎架设教程
  16. C# chart实时曲线
  17. 浅谈MES系统追溯功能五大关键作用
  18. PTA 7-2 不变初心数(15分)思路简单
  19. 嫉妒(译本)--- 作者:弗兰西斯•培根
  20. 恶补FPGA知识——亚稳态

热门文章

  1. 前端都该懂的浏览器工作原理,你懂了吗?
  2. 进入前端行业之前我们需要了解什么,明白这些就可以
  3. 【C语言】在线OJ题 BC99-BC119-牛客网编程初学者入门训练
  4. 超过32位java_在java中存储和使用超过32位的数字!
  5. antares harmony engine安装_PS CC2017安装教程
  6. oracle create user identified by,Oracle system用户忘记密码的解决方法
  7. Bootstrap框架下按钮的禁用
  8. 修改图层的范围_PS教程连载第47课:PS图层操作案例星球
  9. PSIM软件学习---04 子电路的创建
  10. 单片机ADC采样算法----递推平均值采样法