解决python3运行selenium下HTMLTestRunner报错的问题


Posted in Python onDecember 27, 2018

修改HTMLTestRunner.py以支持python3+

搜索到的结果整理

修改一: 在python shell里输入 >>>import HTMLTestRunner >>> dir(HTMLTestRunner) 发现不认识StringIO (No module named StringIO)

确实3里面没有这个了,第94行引入的名称要改,改成import io,539行要改成self.outputBuffer = io.BytesIO()

修改二: 运行程序的时候有报错,AttributeError: ‘dict' object has no attribute ‘has_key' 发现has_key的又被K掉了

到642行去做修改,if not rmap.has_key(cls): 需要换成 if not cls in rmap: (修改的时候换行、空格等不要改掉原有的格式)

修改三: 运行,继续有报错:'str' object has no attribute ‘decode'

好像是3里面对字符的操作,decode已经拿掉了。定位一下,报在了772行,ue = e.decode(‘latin-1'),那么不需要decode操作了吧,直接改成 ue = e ,另外766还有类似的uo = o.decode(‘latin-1'),可不动先留着;

打开本地文件需用 fp = open(filename,'wb'),不要再去用file了;关闭该文件可用fp.close()

修改四: 继续运行,发现还是在纠结数据类型的错: output = saxutils.escape(uo+ue), TypeError: can't concat bytes to str

bytes和str不能直接连起来,那么778行的内容escape(uo+ue) 有一个处理的“笨办法”:都改成str,可修改该处内容为escape(str(uo)+ue)

修改五:(此处是最后一处改动了) 程序已然运行大半,但是最后还是有error: print >>sys.stderr, ‘\nTime Elapsed: %s' % (self.stopTime-self.startTime) TypeError: unsupported operand type(s) for >>: ‘builtin_function_or_method' and ‘RPCProxy'

到631行,把print的语句修改掉,改成 print (sys.stderr, ‘\nTime Elapsed: %s' % (self.stopTime-self.startTime))

以上这篇解决python3运行selenium下HTMLTestRunner报错的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python计算最小优先级队列代码分享
Dec 18 Python
Python使用smtplib模块发送电子邮件的流程详解
Jun 27 Python
python3中int(整型)的使用教程
Mar 23 Python
Python字符串拼接的几种方法整理
Aug 02 Python
Python2.X/Python3.X中urllib库区别讲解
Dec 19 Python
python 多线程中子线程和主线程相互通信方法
Nov 09 Python
Python实现网站表单提交和模板
Jan 15 Python
处理python中多线程与多进程中的数据共享问题
Jul 28 Python
Python turtle绘画象棋棋盘
Aug 21 Python
python修改FTP服务器上的文件名
Sep 11 Python
Python插入Elasticsearch操作方法解析
Jan 19 Python
django的模型类管理器——数据库操作的封装详解
Apr 01 Python
python批量从es取数据的方法(文档数超过10000)
Dec 27 #Python
python 与服务器的共享文件夹交互方法
Dec 27 #Python
通过pykafka接收Kafka消息队列的方法
Dec 27 #Python
python利用thrift服务读取hbase数据的方法
Dec 27 #Python
python hbase读取数据发送kafka的方法
Dec 27 #Python
Python类和对象的定义与实际应用案例分析
Dec 27 #Python
在python环境下运用kafka对数据进行实时传输的方法
Dec 27 #Python
You might like
基于mysql的论坛(5)
2006/10/09 PHP
PHP遍历数组的几种方法
2012/03/22 PHP
PHP排序算法类实例
2015/06/17 PHP
PHP自定义错误处理的方法分析
2018/12/19 PHP
firefox中用javascript实现鼠标位置的定位
2007/06/17 Javascript
javascript 面向对象编程基础:封装
2009/08/21 Javascript
jQuery UI AutoComplete 自动完成使用小记
2010/08/21 Javascript
精通Javascript系列之数据类型 字符串
2011/06/08 Javascript
利用JavaScript检测CPU使用率自己写的
2014/03/22 Javascript
鼠标移到图片上变大显示而不是放大镜效果
2014/06/15 Javascript
在Linux上用forever实现Node.js项目自启动
2014/07/09 Javascript
移动适配的几种方案(三种方案)
2016/11/25 Javascript
jQuery联动日历的实例解析
2016/12/02 Javascript
详解如何较好的使用js
2016/12/16 Javascript
Vue中引入样式文件的方法
2017/08/18 Javascript
加载 vue 远程代码的组件实例详解
2017/11/20 Javascript
9种改善AngularJS性能的方法
2017/11/28 Javascript
基于js 各种排序方法和sort方法的区别(详解)
2018/01/03 Javascript
2种在vue项目中使用百度地图的简单方法
2018/09/28 Javascript
微信小程序冒泡事件及其阻止方法实例分析
2018/12/06 Javascript
微信小程序 wepy框架与iview-weapp的用法详解
2019/04/10 Javascript
微信小程序云开发如何使用云函数生成二维码
2019/05/18 Javascript
微信小程序的开发范式BeautyWe.js入门详解
2019/07/10 Javascript
[01:14]DOTA2亚洲邀请赛 ShowOpen
2015/02/07 DOTA
python中sleep函数用法实例分析
2015/04/29 Python
python用模块zlib压缩与解压字符串和文件的方法
2016/12/16 Python
Python实现简单遗传算法(SGA)
2018/01/29 Python
django之状态保持-使用redis存储session的例子
2019/07/28 Python
SOA的常见陷阱或者误解是什么
2014/10/05 面试题
夜大毕业生自我鉴定
2013/10/31 职场文书
酒鬼酒广告词
2014/03/21 职场文书
共产党员公开承诺践诺书
2014/05/28 职场文书
文明社区申报材料
2014/08/21 职场文书
小学一年级数学教学计划
2015/01/20 职场文书
4S店销售内勤岗位职责
2015/04/13 职场文书
PyQt5 QThread倒计时功能的实现代码
2021/04/02 Python