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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值