selenum autoit上传图片

本文介绍了一种在Selenium不支持操作系统级操作的情况下,利用AutoIt实现文件上传的方法。详细解释了如何通过AutoIt的ControlFocus、WinWait、ControlSetText等函数控制窗口和控件,实现文件路径输入及点击上传按钮的过程。

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

 

转载于:https://www.cnblogs.com/dayouzi/p/10373419.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值