解决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 fileinput模块使用实例
Jun 03 Python
Python函数式编程指南(四):生成器详解
Jun 24 Python
Python 正则表达式入门(中级篇)
Dec 07 Python
python实现快速排序的示例(二分法思想)
Mar 12 Python
Python分割指定页数的pdf文件方法
Oct 26 Python
对Python中plt的画图函数详解
Nov 07 Python
对pandas通过索引提取dataframe的行方法详解
Feb 01 Python
python学生管理系统学习笔记
Mar 19 Python
python 同时读取多个文件的例子
Jul 16 Python
基于python实现语音录入识别代码实例
Jan 17 Python
python 实现客户端与服务端的通信
Dec 23 Python
python爬取抖音视频的实例分析
Jan 19 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
一步一步学习PHP(8) php 数组
2010/03/05 PHP
ThinkPHP实现一键清除缓存方法
2014/06/26 PHP
学习PHP session的传递方式
2016/06/15 PHP
PHP递归实现汉诺塔问题的方法示例
2017/11/25 PHP
PHP网页缓存技术优点及代码实例
2020/07/29 PHP
Js中sort()方法的用法
2006/11/04 Javascript
用js遍历 table的脚本
2008/07/23 Javascript
学习从实践开始之jQuery插件开发 菜单插件开发
2012/05/03 Javascript
javascript实现消灭星星小游戏简单版
2016/11/15 Javascript
js记录点击某个按钮的次数-刷新次数为初始状态的实例
2017/02/15 Javascript
微信小程序 后台登录(非微信账号)实例详解
2017/03/31 Javascript
JavaScript截屏功能的实现代码
2017/07/28 Javascript
解决Vue使用mint-ui loadmore实现上拉加载与下拉刷新出现一个页面使用多个上拉加载后冲突问题
2017/11/07 Javascript
jQuery移动端跑马灯抽奖特效升级版(抽奖概率固定)实现方法
2019/01/18 jQuery
vue实现两个区域滚动条同步滚动
2020/12/13 Vue.js
使用python实现BLAST
2018/02/12 Python
Python WEB应用部署的实现方法
2019/01/02 Python
Python 从一个文件中调用另一个文件的类方法
2019/01/10 Python
Python imageio读取视频并进行编解码详解
2019/12/10 Python
Python更新所有已安装包的操作
2020/02/13 Python
Python socket连接中的粘包、精确传输问题实例分析
2020/03/24 Python
keras的ImageDataGenerator和flow()的用法说明
2020/07/03 Python
selenium+python实现基本自动化测试的示例代码
2021/01/27 Python
python实现杨辉三角的几种方法代码实例
2021/03/02 Python
阿迪达斯荷兰官方网站:adidas荷兰
2018/03/16 全球购物
Java方面的关于数组和继承的笔面试题
2015/09/18 面试题
文员个人的求职信范文
2013/09/26 职场文书
商场消防管理制度
2014/01/12 职场文书
销售人员求职的自我评价分享
2014/03/15 职场文书
高中生评语大全
2014/04/25 职场文书
课内比教学心得体会
2014/09/09 职场文书
毕业实习证明(4篇)
2014/10/28 职场文书
医生个人年终总结
2015/02/28 职场文书
电力培训学习心得体会
2016/01/11 职场文书
Java十分钟精通进阶适配器模式
2022/04/06 Java/Android
Win11查看设备管理器
2022/04/19 数码科技