pip安装wxpython出错_Windows系统python3.7.5+robot framework安装及遇见的问题(一)

声明:事后在学习使用robot

framework进行测试脚本编写时,发现其实python3.8不支持ride.py的Edit表格编写,在查阅资料后,目前应该暂时只支持了python3.7.5,所有后面我编写脚本使用的是sublime,然后再用ride.py进行执行

后续我的另外一台win7电脑用的python3.7.5按照下面的方式安装,是可行的

前提:自己已经下载装好了Python3.7.5/6,下面是我逐步尝试搜索后出现的各类报错信息和截图,现在已经最后正确的方法汇总到文章前面,方便自取。

Windows10系统,操作均在cmd命令行窗口内进行

1、装pip: “python -m pip install --upgrade pip”;已有最新版本的可以忽略此步骤继续执行

2、装robotframework: “pip install robotframework-ride”;

——如果有报超时的错误,可以尝试用“pip --default-timeout=100 install robotframework-ride”

3、装wxPython: “pip install wxPython”,查看wx版本安装是否成功的参考链接;

4、输入python,进入python环境,再输入”import wx“没有报错就可以继续下一步;

Windows10和Windows7两种处理方式

5(1)、Windows10:双击ride.py程序还是闪退,或者命令行直接输入“ride.py”没有弹出可视弹窗;

报错内容如下:

wx._core.wxAssertionError: C++ assertion "strcmp(setlocale(LC_ALL, NULL), "C") == 0" failed at ..\..\src\common\intl.cpp(1579) in wxLocale::GetInfo(): You probably called setlocale() directly instead of using wxLocale and now there is a mismatch between C/C++ and Windows locale.

Things are going to break, please only change locale by creating wxLocale objects to avoid this!

OnInit returned false, exiting...

Error in atexit._run_exitfuncs:

wx._core.wxAssertionError: C++ assertion "GetEventHandler() == this" failed at ..\..\src\common\wincmn.cpp(478) in wxWindowBase::~wxWindowBase(): any pushed event handlers must have been removed

找到python文件夹里的application.py文件,在“wx.HelpProvider.set(wx.SimpleHelpProvider)”的下一行加上“self.locale = wx.Locale(wx.LANGUAGE_ENGLISH)”这句,要注意用空格不要用Tab键。

再次双击ride.py图标,成功唤起图形化界面。

89a1e708fee8459ea447ea08905fe1a7.jpg

5(2)、Windows7:python3.7.5双击ride.py或者在命令行输入ride.py唤起的内容不是ride窗口,而是它里面的具体代码信息,可以在python文件夹里找到Scripts,找到“ride.py”右键选择用python.exe打开即可

Windows7的第二种处理方式:

如果发现ride.py一直打开方式里没有python.exe的选择,可以创建ride.py的桌面快捷方式,在目标框中输入 F:\python37\pythonw.exe -c “from robotide import main;main()” ————这种方法有个弊端,在后续安装windowsGUI相关库时,无法打开实例文件,目前还在尝试找方法去解决

以下是我逐步解决问题的经过,只是做一个记录。需要解决办法的可以直接看上面

1、使用pip install roboframwork在cmd命令行创建进行安装

下载受阻报错:

WARNING: You are using pip version 19.2.3, however version 20.0.2 is available.

You should consider upgrading via the 'python -m pip install --upgrade pip' command.

百度翻译告诉我:

警告:您使用的是pip版本19.2.3,但版本20.0.2可用。

您应该考虑通过“python-m pip install–upgrade pip”命令进行升级。

86a6b69f957a4391adffa27d7f038ca4.jpg

2、但是这个命令也是不对,提示:

‘python-m’ 不是内部或外部命令,也不是可运行的程序或批处理文件。

ba07e64c11ed4b9b86a592143760dc8c.png

3、啧啧啧,满世界都是报错,查一下又怎么了吧~

让使用“python -m pip install -U --force-reinstall pip”,试了一下这个报错简直不要太多了!

f9e1e7b95a7240fda7b8c48fed63554f.jpg

4、继续这里报错警告里的python -m pip install --upgrade pip,好了开始下载进度条中。。。等待。。。

我终于成功了!!!!!

89a1e708fee8459ea447ea08905fe1a7.jpg

f6b76357b28d45dda379b49432532f1b.png

5、最后发现还是不行,认怂的搜索了其他方法,然后滚去用直接安装包安装了robotframework-3.0.2.tar.gz文件

还差一个wxPython的包,试了多种方式都安装不成功,最后按照百度经验上的使用cmd命令窗口输入"pip install wxPython"然后默默的等待,终于成功了!

然后再输入python进入python环境,再输入”import wx“没有报错了!!!!1d0ef234e87d445ba0506699fc06ab02.jpg

6、然后进入到python的安装目录的/Scripts目录下,找到ride.py文件–>右键–>发送到–>桌面快捷方式,更改了它的图标后,双击它。闪退了。正在找原因,初步怀疑是robotframework-ride-1.3.win32.exe的包是python2的,我现在是python3不适用.

7、查看wx版本参考链接:https://www.cnblogs.com/jiyanjiao-702521/p/9147867.html

尝试继续在命令行窗口安装“pip install robotframework-ride”

安装成功!但是双击ride.py程序还是闪退

0e276bc208904d2ea4133dc75b019066.jpg

8、全世界都在报错

报错内容如下:

wx._core.wxAssertionError: C++ assertion "strcmp(setlocale(LC_ALL, NULL), "C") == 0" failed at ..\..\src\common\intl.cpp(1579) in wxLocale::GetInfo(): You probably called setlocale() directly instead of using wxLocale and now there is a mismatch between C/C++ and Windows locale.

Things are going to break, please only change locale by creating wxLocale objects to avoid this!

OnInit returned false, exiting...

Error in atexit._run_exitfuncs:

wx._core.wxAssertionError: C++ assertion "GetEventHandler() == this" failed at ..\..\src\common\wincmn.cpp(478) in wxWindowBase::~wxWindowBase(): any pushed event handlers must have been removed

心灰意冷之下,搁置了接近一周,然后无意发现这个小伙伴的报错和我的一毛一样!我试了下在application.py这个文件里加上了

self.locale = wx.Locale(wx.LANGUAGE_ENGLISH)

这行代码,再次运行,成功!!!!

7496c8a61c774b43b0326f727e403dfe.jpg

PS:感谢以下博主提供的各类解决方法

1、https://www.cnblogs.com/ihacker/p/11294868.html

2、https://blog.csdn.net/weixin_43941826/article/details/84859522?depth_1-utm_source=distribute.pc_relevant.none-task&utm_source=distribute.pc_relevant.none-task

3、https://blog.csdn.net/qwq_1234/article/details/97267734

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
自动化环境搭建 1、Python(推荐使用ActivePython,这个版本PATH已经配好了,也安了一些像pip这样的包) 2、WxPython安装,保持勾选状态,不要把勾去掉!!!) 3、安装rf,以管理员身份运行cmd, pip install robotframework 4、安装RIDE,以管理员身份运行cmd, pip install robotframework-ride 5、安装Selenium2Library,以管理员身份运行cmd,pip install robotframework-selenium2library 6、安装python32位拓展,以管理员身份运行cmd,pip install pywin32 7、安装DatabaseLibrary , 以管理员身份运行cmd, pip install robotframework-databaselibrary 安装VCForPython27 安装vcredist_x64 安装驱动MySQL-python-1.2.3.win-amd64-py2.7(根据电脑自行选择32,64) 8、pip install pyodbc 需要更新setuptools,运行pip install --upgrade setuptools pip(第一遍报错,在执行一遍命令即可) 然后安装连接pyodbc的驱动mysql-connector-odbc-5.3.9-winx64.msi。(安装到这一步就完成了。下面是测试步骤,所有安装完成后再测试也可以)安装完成后打开   打开数据源添加驱动(添加按钮)   填写完整后点击test返回successful表示成功   选择库 打开robot新建测试用例输入如下内容   Connect To Database Using Custom Params 连接数据库的关键字 pyodbc 连接数据库的工具 database='test', 数据库的名字 user='root', 连接数据库的用户名 password='', 密 码 host='127.0.0.1', 数据库的IP port=3306, 数据库的端口号 Driver='{MySQL ODBC 5.3 Unicode Driver}' 数据库的驱动 query 查询语句 Disconnect From Database 断开连接数据库   Execute Sql String     执行sql语句 9、安装AutoItLibrary库(模拟键盘鼠标操作) 安装(选择x64安装) (路径改一下,因为program files(x86)路径win系统似乎会禁止读写,改成c:\AutoIt3即可) 安装 解压后,使用cmd(管理员启动),cd到包目录执行python setup.py install命令安装 9、pip freeze检查安装包 启动ride: 命令进入ride: 1:cmd; 2:cd c:\; 3:cd Python27; 4:cd Scripts; 5:输入命令:python ride.py。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值