文件上传是web自动化中很常见的一个功能,一般分两个场景:
1.input标签,type=file属性。此种可以直接用send_keys()方法上传文件图片等
例如百度搜索页面的图片搜索功能:
点击百度搜索框中的‘相机’按钮:
这种的话直接send_keys就能直接上传本地图片了
需上传的本地图片:
代码:
2.非input标签,可以借助autoit这个第三方工具来上传,下载地址:AutoIt Downloads - AutoIt
下载zip文件后解压缩会得到一个install文件夹
install文件夹:
打开脚本编辑器,双击:
打开元素定位器,并在网页上打开上传文件窗口
此时打开脚本编辑器,根据定位器上提供的数据编写脚本,根据第一步的数据:
编辑后的脚本为:
检查一遍编辑的脚本有无问题:点击脚本编辑器下的tools标签下的go,此时网页上传文件是窗口必须打开
执行成功后保存文件:File--->save ,命名为'xxx.au3'的文件类型,由于这个类型的文件只能在脚本编辑器中使用,并不能被python脚本使用,此时点击Tools标签下的compile,就会在原来保存的.au3同一目录下生成.exe文件,此时在python脚本中调用os模块的os.system方面即可调用.exe文件
有其它方法的大佬可以多多交流,不喜勿喷