场景:前端时间在家里环境编写了一部分脚本,中间耽搁了一段时间,最近想在单位重新开始弄,所以将代码考到单位环境后出现了一系列报错问题,对这些问题梳理总结如下。
![84aeb0066f6db93c5d33ae8783ce09f8.png](https://i-blog.csdnimg.cn/blog_migrate/2ddd8074a80e84db963be67a7c7bb671.jpeg)
1.build failed ,提示"unable to find an ant file to run"
![54d36bbe30bd375b8cfc7c02cf974198.png](https://i-blog.csdnimg.cn/blog_migrate/5e05e632e0564905b642e8406addee07.jpeg)
解决:我采用方法2解决成功
出现问题原因:这个文件时我从电脑A拷贝到电脑B,缺少相应文件导致
2.python出现"No module named "XXX""的解决办法
![8761d2ff848b9a7a7f755ce075f77779.png](https://i-blog.csdnimg.cn/blog_migrate/33698a02ec65e5ec5e7c64d734f05341.jpeg)
![2b1970b695418e0c6069b448794fa10c.png](https://i-blog.csdnimg.cn/blog_migrate/409c23a102ec82020880a58f3046256d.jpeg)
意思是出现这个问题的原因:
1.环境中没有安装pip文件
2.安装了,环境路径错误
解决如下:
首先执行升级命令升级到最新
python -m pip install -U pip
再到site-packages目录下找pip 包
查看编译环境是否能找到自己安装的包的路径,确认是文件夹下的目录
![591926d8d4a9fe2b9a5ac0436fd5101a.png](https://i-blog.csdnimg.cn/blog_migrate/030f13b6f758e7d03ffc0757a2094fd5.jpeg)
3.Non-UTF-8 code starting with 'xc4'
![d84aa6c8aaf2cd3504e7847c53f59438.png](https://i-blog.csdnimg.cn/blog_migrate/4d9e8cc4f1b2a1712924d7b5336c9e21.jpeg)
解决(1):在程序最上方加上语句,# coding=gbk
![dfcb694c0a6e489de5cb46f9e469717c.png](https://i-blog.csdnimg.cn/blog_migrate/7d3f53f78ed9a06b3248aafe81571659.jpeg)
解决(2):在preference下进行修改
![ffbf237ac664f840e08f89cc57388436.png](https://i-blog.csdnimg.cn/blog_migrate/cd87b3286c7e02575634848bfb87d41d.jpeg)
4. ocr识别过程中报错 tesseract is not installed
![238e3a53a696bdbeeb5a6c0092abc55d.png](https://i-blog.csdnimg.cn/blog_migrate/eb0e2613793c38c5acd669bdd07cfad6.jpeg)
这个问题无论在初始编译时或者在后来坏境变更调试时都会遇到的问题。
解决:问题原因是源码中的默认路径位置与文件位置不同,需要更改一下
![af2b11d499bd05e2de7f63090c9cd45e.png](https://i-blog.csdnimg.cn/blog_migrate/16861737ead4bb38368aeeecbd94e7cc.jpeg)
7.如果下拉菜单的内容项提示定位不到,可以试试move_to_element()办法进行
![111556acf1ae8635a81523339fba9b33.png](https://i-blog.csdnimg.cn/blog_migrate/5874ae8a2b12abf3dba590e3de2fe859.jpeg)
下拉框是鼠标移上去直接弹出的,那么我们可以使用move_to_element()进行操作
8.切换窗口句柄时,提示list index out of range python
![399bcb246105ec063965b1576b854ba1.png](https://i-blog.csdnimg.cn/blog_migrate/2bd47ce300a8af5f9bce24676abe3ee7.jpeg)
后来想了一下,是因为新窗口没有打开,所以就不存在窗口2,所以才会提示列表超出范围,感觉有点开窍了
9.进入三级页面提示503 Service Temporarily Unavailable,如果手动刷新页面重新加载成功
网上看都是如何配置及原因的,没告诉如何解决
于是我想,如果是这样的话,执行刷新操作应该可以规避这个问题
![23fd24d2c8a19f8b7a4d508ee8e2d5bf.png](https://i-blog.csdnimg.cn/blog_migrate/2d69816dfc7a5795b0a367ab7cdbd4c2.jpeg)
语句:driver.refresh()
总结
通过这一系列的问题,有点感触分享一下,遇到问题后最好先分析一下报错属于哪一类,锻炼自己不通过网上找答案,提高自己的分析能力;另外,有些时候开拓一下思路,比如上面的问题9,如果只是想怎么从根本上取消503提示,再加上对这个环境不熟悉,估计破费周折,但是换个思路加一行刷新代码,程序就可以往下进行了。