下面是我在学习中遇到的问题,给大家分享一下:
 
'''
这里是测试代码
'''
# coding = utf-8
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.common.keys import Keys
from selenium.webdriver.support.ui import Select
from selenium.common.exceptions import NoSuchElementException
import unittest, time, re
import HTMLTestRunner

class Baidu(unittest.TestCase):
    def setUp(self):
        self.driver = webdriver.Chrome()
        self.driver.implicitly_wait(30)
        self.base_url = "http://www.baidu.com

"
        self.verificationErrors = []
        self.accept_next_alert = True

#测试用例
    def test_baidu_search(self):
        driver = self.driver
        driver.get(self.base_url + "/")
        driver.find_element_by_id("kw").send_keys("selenium")
        driver.find_element_by_id("su").click()
        time.sleep(2)
        driver.close()

def tearDown(self):
        self.driver.quit()
        self.assertEquals([], self.verificationErrors)
if __name__ == "__main__":
    #定义一个单元测试容器
    testunit = unittest.TestSuite()
    #将测试用例加入到测试容器中
    testunit.addTest(Baidu("test_baidu_search"))
 
    #定义个报告存放路径,支持相对路径
    filename = "E:\\result.html"
    fp = file(filename, "wb")

 

 1,先检查BaiduReport.py 代码,没有检查出问题,错误提示显示第8行 import HTMLTestRunner,检查拼写正确,估计
 
是引用文件HTMLTestRunner.py的问题。
2,检查HTMLTestRunner.py 文件:
!)点击蓝色部分,直接打开HTMLTestRunner.py文件,果然StringIO报错了。

查阅资料,StringIO方法是Python里自带的方法,那是哪里出问题了?HTMLTestRunner.py是自从网上下载别人写好的文件,

 
难道这个文件出问题了?网上找了帖子,给的链接还是这个链接:http://tungwaiyip.info/software/HTMLTestRunner.html
去找来一些关于StringIO方法的资料,看到下面的资料时,恍然大悟,考虑应该是Python版本的问题,程序没有错。

后来,找到帖子证明了这个问题,参考:https://blog.csdn.net/wodedipang_/article/details/80062160

“import StringIO”改成“from io import StringIO ”,运行成功。
PS:我的Python版本是python 3.6的,import StringIO适用于python 2.X

总结:有些问题,可能找不原因,但是就是报错,这时想一下可能是

1)版本的问题,比如版本发生变化,有的方法不在适用,我们不可能每个版本都去学习,每个版本都去找资料学习,遇到
 
这类问题要思考是否是版本的问题,自己找资料解决
2)资源释放的问。没有报错,就是没有显示内容,这种问题可能跟资源释放有问题,检查资源是否关闭了。
_____________________________________________________________________________________________
 
 写到这里就结束了,如果有什么疑问可以给我留言哦~
 
 
 

解决Python模块报错:ModuleNotFoundError: No module name 'StringIO'的更多相关文章

  1. Python报错ModuleNotFoundError: No module named 'numpy'

    转载:https://blog.csdn.net/qq_39779233/article/details/103224712 Python报错ModuleNotFoundError: No modul ...

  2. pyinstaller打包多个py文件仍报错ModuleNotFoundError: No module named 'xxx'

    [问题现象] 使用pyinstaller A.py -p b.py -p c.py打包多个文件 或者使用main.spec在Analysis配置好各个文件打包 打包成功后,运行main.exe仍然报错 ...

  3. centos7中python3.6报错ModuleNotFoundError: No module named '_ssl' 或者 Max retries exceeded with url: / (Caused by SSLError("Can't connect to HTTPS URL because the SSL module is not available.",))

    如果在运行爬虫时报此错:requests.exceptions.SSLError: HTTPSConnectionPool(host='www.baidu.com', port=443): Max r ...

  4. Django 修改该项目文件夹、项目名及项目文件夹中同名文件夹,报错 ModuleNotFoundError: No module named 'untitled'

    如果你直接重构项目文件夹名及重构项目名和重构项目文件夹内同名文件夹 执行项目报错 ModuleNotFoundError: No module named 'untitled' 请执行以下操作

  5. python创建__init.py__文件导入模块仍然报错ModuleNotFoundError: No module named 'name'

    今自定义模块后非相同目录导出提示找不到模块报错信息如下: ModuleNotFoundError: No module named 'name' 各方查找各位大神方法很多 参考链接 1.在需要导入的文 ...

  6. 【python+beautifulsoup4】Python中安装bs4后,pycharm报错ModuleNotFoundError: No module named 'bs4'

    本文主要分享关于在对应python版本中安装beautifulsoup之后,在代码执行时还会提示“No module named 'bs4'”的问题. 安装beautifsoup4 在命令窗口执行 p ...

  7. 运行Scrapy工程,报错ModuleNotFoundError: No module named 'win32api'解决方法

    1.运行爬虫scrapy crawl name,报错ScrpyModuleNotFoundError: No module named 'win32api' 2.解决方法: 在https://gith ...

  8. pycharm安装 suds模块报错:AttributeError: module 'pip' has no attribute 'main'

    需求:安装suds模块 遇到的问题: 一.报错信息:[file][Default Settint]---Project Interpreter 点击 搜索suds安装模块报错 解决:依据上图提示找到C ...

  9. redhat 6安装python 3.7.4报错ModuleNotFoundError: No module named '_ctypes' make: *** [install] Error 1

    问题描述: 今天在测试环境中,为了执行脚本,安装下python3命令,在执行make install的时候报错: ModuleNotFoundError: No module named '_ctyp ...

随机推荐

  1. hive 初始化数据库报错

    安装hive,初始化数据库的时候报错 schematool -dbType mysql -initSchema Metastore Connection Driver : com.mysql.cj.j ...

  2. Yii集成PHPWord

    一.安装 1.下载composer curl -sS https://getcomposer.org/installer | php 将composer.phar文件移动到bin目录以便全局使用com ...

  3. dbms_lob包学习笔记之三:instr和substr存储过程

    instr和substr存储过程,分析内部大对象的内容 instr函数与substr函数 instr函数用于从指定的位置开始,从大型对象中查找第N个与模式匹配的字符串. 用于查找内部大对象中的字符串的 ...

  4. 使用docker来创建一个etcd集群

    docker run -d --name etcd1 --network etcdnet --ip 172.25.0.101 -p 23791:2379 -e ETCDCTL_API=3 -v /ro ...

  5. JSP九大隐式对象和四大域对象-----面试

    因为jsp实质是一个Servlet对象:jsp在第一次访问时会被Web容器翻译成Servlet,在执行过程:第一次访问---->inex.jsp---->index_jsp.java--- ...

  6. matrix67中适合程序员的例子

    交互式证明:http://www.matrix67.com/blog/archives/6572 捡石子游戏(移动皇后问题):http://www.matrix67.com/blog/archives ...

  7. 【JOISC2018|2019】【20190622】minerals

    题目 交互题 有\(2n\)个物品,编号为\(1-2n\),存在唯一的两两配对关系,即有\(n\)种物品 有一个盒子,初始为空,盒子上会显示里面存在的物品种类数\(C\) 你每次操作可以将一个物品从盒 ...

  8. mysql5.7 之 sql_mode=only_full_group_by问题

    在使用查询时,使用到了group by 分组查询,报如下错误: ERROR (): In aggregated query without GROUP BY, expression # of SELE ...

  9. nginx重启 平滑重启

    进入 ngiinx sbin目录下./nginx -c /usr/local/nginx/conf/nginx.conf -c参数指定了要加载的nginx配置文件路径 停止操作停止操作是通过向ngin ...

  10. 前端VScode推荐插件

    Auto Close Tag 自动添加HTML / XML关闭标签 Auto Rename Tag 自动重命名配对的HTML / XML标签 Beautify 格式化代码 [必须]Bracket Pa ...