Autoit+selenium+python实现文件上传功能

前言

学习过selenium的人一定会知道,selenium是根据网页上的标签来定位的,但是你上传文件时却是调用的非网页上的窗口,针对selenium这一个弊端,所以需要运用到Autoit工具来实现脚本上传的功能

前期准备

1.按照Autoit
2.搭建python环境,按照pycharm
3.安装selenium包且将与浏览器对应版本的driver下载下来
这三步我就不多做赘述了,大家可以自行百度 去安装好

录制文件上传脚本

1.打开上传图片的电脑弹窗
Autoit+selenium+python实现文件上传功能
2.打开Autoit下的AutoIt Window Info(用于定位文件上传弹窗元素),SciTE Sctipt Editor(编辑脚本)
Autoit+selenium+python实现文件上传功能
3.定位元素,拖动Finder Tool到需要定位的元素上
Autoit+selenium+python实现文件上传功能
Autoit+selenium+python实现文件上传功能

4.打开SciTE Sctipt Editor编写脚本,打开就是Title,Edit1就是Class+Instance
脚本:
ControlFocus(“打开”,"",“Edit1”);
ControlSetText(“打开”,"",“Edit1”,“E:\成都软件测试沙龙PPT资料.pdf”);
sleep(2000);
ControlClick(“打开”,"",“Button1”)
Autoit+selenium+python实现文件上传功能

5.脚本编写好后就是调试了,保存一下脚本,不要关闭文件上传弹窗,点击Tools->Go,他就会自动运行脚本,可以看到成功了,因为这里要上传的是图片,我刚才上传的是pdf,脚本有用,保存到桌面
Autoit+selenium+python实现文件上传功能
6.打开Compile Script to .exe
Autoit+selenium+python实现文件上传功能
7.将刚保存下来的.au3文件转化成exe文件,将脚本导入后点击Convert
Autoit+selenium+python实现文件上传功能
8.打开pycharm,用os.system去调用exe文件(这里我嫌路径麻烦就直接把exe文件放到E盘下了,大家要根据自己的文件路径去选择),下面是我写的一个脚本,运行一下。运行完成后,可以看到文件已经上传上去了
Autoit+selenium+python实现文件上传功能