欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

selenum autoit上传图片

程序员文章站 2022-04-09 18:16:05
目前,一般实现文件图片上传的方式都是有一个按钮,点击之后直接调用操作系统自身的弹框,选择文件后,实现上传。因为Selenium不支持调用操作系统的操作,所以这种情况下,利用Selenium无法完成图片上传,这时,我们可以选择autoit实现。 autoit可以操控控件 下载地址 :https://w ......

目前,一般实现文件图片上传的方式都是有一个按钮,点击之后直接调用操作系统自身的弹框,选择文件后,实现上传。因为selenium不支持调用操作系统的操作,所以这种情况下,利用selenium无法完成图片上传,这时,我们可以选择autoit实现。

autoit可以操控控件

下载地址 :https://www.autoitscript.com/site/autoit/downloads/

 

实现文件上传需要的几个方法:
  controlfocus ( "窗口标题", "窗口文本", 控件id)   设置输入焦点到指定窗口的某个控件上
  winwait ( "窗口标题" [, "窗口文本" [, 超时时间]] )  暂停脚本的执行直至指定窗口存在(出现)为止
  controlsettext ( "窗口标题", "窗口文本", 控件id, "新文本" )   修改指定控件的文本
  sleep ( 延迟 )   使脚本暂停指定时间段
  
 
 
selenum autoit上传图片
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)