selenum autoit上传图片
程序员文章站
2022-06-24 14:38:53
目前,一般实现文件图片上传的方式都是有一个按钮,点击之后直接调用操作系统自身的弹框,选择文件后,实现上传。因为Selenium不支持调用操作系统的操作,所以这种情况下,利用Selenium无法完成图片上传,这时,我们可以选择autoit实现。 autoit可以操控控件 下载地址 :https://w ......
目前,一般实现文件图片上传的方式都是有一个按钮,点击之后直接调用操作系统自身的弹框,选择文件后,实现上传。因为selenium不支持调用操作系统的操作,所以这种情况下,利用selenium无法完成图片上传,这时,我们可以选择autoit实现。
autoit可以操控控件
下载地址 :https://www.autoitscript.com/site/autoit/downloads/
实现文件上传需要的几个方法:
controlfocus ( "窗口标题", "窗口文本", 控件id) 设置输入焦点到指定窗口的某个控件上
winwait ( "窗口标题" [, "窗口文本" [, 超时时间]] ) 暂停脚本的执行直至指定窗口存在(出现)为止
controlsettext ( "窗口标题", "窗口文本", 控件id, "新文本" ) 修改指定控件的文本
sleep ( 延迟 ) 使脚本暂停指定时间段
controlclick ( "窗口标题", "窗口文本", 控件id [, 按钮] [, 点击次数]] ) 向指定控件发送鼠标点击命令
controlenable("文件上传","","edit1") winwait("[class:#32770]","",10) controlsettext("文件上传","","edit1",$cmdline[1]) #$cmdline[0] ;参数的数量 $cmdline[1]第一个参数 (脚本名称后面) $cmdline[2] ;第二个参数
sleep(2000)
controlclick("文件上传","","button1")
sleep(2000)
这样保持起来,然后使用 compile script to .exe 打包成exe文件使用python调用:
for i,zzz in enumerate(lists): os.system(r'e:\hello_data\31.exe %s'%zzz)
上一篇: 多任务拷贝小案例