项目场景:
数据录入、重复性流程工作
问题描述
注:本文只是记录并总结一些问题,并非做讲解
由于工作中需要录入大量数据,可替代性高、耗时且无实质性意义。最初是从网上寻找关于自动化方面的内容,下载了一个客户端脚本软件,需要用到python,因为没学过的原因又在网上找代码进行拼凑,总觉得可以按照上面的说明实现。现在想一想当时也挺可笑的,幻想着东拼西凑几行代码就能解决问题,简称“有心无力”。后来打算学python,事实证明我当时的选择是正确的。
解决方案:
言归正传,我使用的是selenium,总结一下我在做自动化过程中遇到的一些问题:
- 浏览器驱动,常用的有Google和Firefox,这里需要注意浏览器驱动版本和浏览器版本匹配的问题,否则浏览器驱动无法正常调用
- 网页加载问题,也就是三种等待方式:强制等待、隐式等待和强制等待。需要注意的是如果使用强制等待,多次测试算出平均等待时间,不然网页可能因为加载不完报错
- 元素定位问题,我使用的是xpath,这种方式的优点是准确,它根据元素所在的位置定位。需要注意的是它有两种:xpath和full xpath,二是优选
- iframe,如果遇到定位不到元素的情况,检查一下网页中是否存在iframe,有iframe需要切换到iframe再去定位元素
- 网页窗口切换,例如同时对两个网页进行操作,需要切换到另一个网页在操作
- ActionChain模拟鼠标悬停,简单理解为鼠标悬停再点击