感谢[我去热饭*饭哥]的开发及无私分享,这里我将实践的情况以及踩的坑记录整理一下。
步骤1:安装必备的包
#此处注意:python版本3.5可以,python3.7出现问题 pip install python-Levenshtein -i https://pypi.tuna.tsinghua.edu.cn/simple/ pip install selenium -i https://pypi.tuna.tsinghua.edu.cn/simple/ pip install wqrfnium -i https://pypi.tuna.tsinghua.edu.cn/simple/ pip install xlrd -i https://pypi.tuna.tsinghua.edu.cn/simple/ pip install xlwt -i https://pypi.tuna.tsinghua.edu.cn/simple/ pip install xlutils -i https://pypi.tuna.tsinghua.edu.cn/simple/ #安装Visual C++ 14.0。
步骤2:执行代码
from selenium import webdriver from wqrfnium.wqrfnium import * begin_wqrf(r'MyElements.xls') driver = webdriver.Chrome() driver.get("http://www.baidu.com/") time.sleep(5) #注意:我这里写的是search。作者写的是seach。 getelement(driver, "search_input").send_keys('我是热饭') time.sleep(5)
看到没,报错了,怎么办?
代码执行之后,我们的demo学习文件夹里会有一个ini文件,打开它,配置一下路径即可。
再运行一下代码:
步骤3:填充Excel文件
手动进入elements.xls,把要定位的页面元素手动输入定位方式和定位值,粘贴到excel表中,每行一个元素 第一列:元素的标识,用于之后代码中直接调用该元素,如示范代码中的“seachinput” 第二列:元素的默认定位方式,如id 第三列:元素的默认定位值,如 kw 第四列:元素的下标,一般都写0,算法获取元素是获取符合要求的所有元素 第五列:元素的html源码标签,无需注意,由系统自动生成。
步骤4:再次执行一次代码
下面我们试着剖析一下源码的原理:
脚本第1次运行。
执行成功,毕竟是你自己写的代码。
脚本第2次运行(假设此时前端的UI已经更改了一些属性,你在excel里面的id,kw已经找不到了)。
那么就会走下面的代码。
关键部分:search_new。这段我没怎么看懂。