selenum autoit上传图片

目前,一般实现文件图片上传的方式都是有一个按钮,点击之后直接调用操作系统自身的弹框,选择文件后,实现上传。因为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)

 

posted @ 2019-02-14 15:33  一个大柚子  阅读(494)  评论(0编辑  收藏  举报