神剑山庄资源网 Design By www.hcban.com
前言
前一篇autoit实现文件上传打包成.exe可执行文件后,每次只能传固定的那个图片,我们实际测试时候希望传不同的图片。
这样每次调用的时候,在命令行里面加一个文件路径的参数就行。
一、命令行参数
1.参数化传入的参数,可以通过autoit的命令行参数:
myProg.exe param1 “This is a string parameter” 99
在脚本中,可用以下变量获取命令行参数:
$CmdLine[0] ; = 3 $CmdLine[1] ; = param1 $CmdLine[2] ; = "This is a string parameter" $CmdLine[3] ; = 99 $CmdLineRaw ; = 'param1 "This is a string parameter" 99'
- $CmdLine[0] 获取的是命令行参数的总数,在上例中$CmdLine[0]=3
- $CmdLine[1]~$CmdLine[63] 获取的是命令行参数第1到第63位,这个方式最多只能获取63个参数,不过正常情况下是足够用的
- $CmdLineRaw 获取的是未拆分的所有参数,是一个长字符串,这种情况下不局限与63个参数
2.将如下代码保存为.exe文件后(文件名随便取一个:cmdjpg.exe),在cmd执行一次,看是否成功
WinActivate("文件上传"); ControlSetText("文件上传", "", "Edit1", $CmdLine[1] ); Sleep(2000); ControlClick("文件上传", "", "Button1");
3.用python代码执行
# 需上传图片的路径 file_path = "D:\\1.png" # 执行autoit上传文件 os.system("C:\Users\Gloria\Desktop\cmdjpg.exe %s" % file_path) # 你自己本地的
二、批量上传图片
1.方法一:先把要上传的图片放到一个list下,然后for循环
# 把需要上传的图片放到一个list下 all_png = ["D:\\1.png", "D:\\2.png", "D:\\3.png", "D:\\4.png"] # 循环点击上传图片 for i in all_png: # 1点开编辑器图片 # 2点开文件上传按钮 # 执行autoit上传文件 os.system("C:\Users\Gloria\Desktop\cmdjpg.exe %s" % i) # 你自己本地的.exe路径 time.sleep(3)
2.方法二:把要上传的图片编号,如:0.png , 1.png, 2.png这种(从0开始编号),放到同一目录下,然后for循环
# 循环点击上传图片 for i in range(4): # 1点开编辑器图片 # 2点开文件上传按钮 # 文件名 file_name = "D:\\%s.png" % i # 参数化路径名称 # 执行autoit上传文件 os.system("C:\Users\Gloria\Desktop\cmdjpg.exe %s" % file_name) # 你自己本地的.exe路径 time.sleep(3)
三、参考代码
# coding:utf-8 from selenium import webdriver import time import os # 加载配置文件实现免登录 profileDir = r'C:\Users\Gloria\AppData\Roaming\Mozilla\Firefox\Profiles\1x41j9of.default' # 你自己电脑的配置文件路径,不要抄我的 profile = webdriver.FirefoxProfile(profileDir) driver = webdriver.Firefox(profile) driver.implicitly_wait(30) driver.get("http://www.cnblogs.com/yoyoketang/") driver.find_element_by_link_text("新随笔").click() time.sleep(3) # 方法一:把需要上传的图片放到一个list下 all_png = ["D:\\1.png", "D:\\2.png", "D:\\3.png", "D:\\4.png"] for i in all_png: # 点开编辑器图片 driver.find_elements_by_css_selector("img.mceIcon")[0].click() time.sleep(3) # 定位所有iframe,取第二个 iframe = driver.find_elements_by_tag_name('iframe')[1] # 切换到iframe上 driver.switch_to_frame(iframe) # 点开文件上传按钮 driver.find_element_by_name('file').click() time.sleep(3) # 执行autoit上传文件 print i os.system("C:\Users\Gloria\Desktop\cmdjpg.exe %s" % i) # 你自己本地的.exe路径 time.sleep(3) driver.switch_to_default_content() # 切回到主页面 # # 方法二:循环点击上传图片 # for i in range(4): # # 1点开编辑器图片 # # # 2点开文件上传按钮 # # # 文件名 # file_name = "D:\\%s.png" % i # 参数化路径名称 # # # 执行autoit上传文件 # os.system("C:\Users\Gloria\Desktop\cmdjpg.exe %s" % file_name) # 你自己本地的.exe路径 # time.sleep(3)
神剑山庄资源网 Design By www.hcban.com
神剑山庄资源网
免责声明:本站文章均来自网站采集或用户投稿,网站不提供任何软件下载或自行开发的软件!
如有用户或公司发现本站内容信息存在侵权行为,请邮件告知! 858582#qq.com
神剑山庄资源网 Design By www.hcban.com
暂无selenium+python自动化78-autoit参数化与批量上传功能的实现的评论...
更新日志
2024年10月02日
2024年10月02日
- 孙悦.1996-伙伴【正大国际】【WAV+CUE】
- 纪钧瀚《钢琴阅读时光 雨中书店聆听轻音乐》[FLAC/分轨][399.62MB]
- 证声音乐图书馆《走向自然 疗心爵士乐》[320K/MP3][87.4MB]
- 证声音乐图书馆《走向自然 疗心爵士乐》[FLAC/分轨][184.94MB]
- 陈慧娴.2018-Priscilla-Ism演唱会3CD(2024环球红馆40复刻系列)【环球】【WAV+CUE】
- 郑秀文.1999-我应该得到(国)【华纳】【WAV+CUE】
- 陈家慧.2011-钢琴酒吧2CD【龙吟唱片】【WAV+CUE】
- 证声音乐图书馆《雨季 蓝调吉他 Rainy Blues》[320K/MP3][45.01MB]
- 证声音乐图书馆《雨季 蓝调吉他 Rainy Blues》[FLAC/分轨][109.13MB]
- 赞多《序章》[320K/MP3][45.54MB]
- 许巍.2004-每一刻都是崭新的【步升大风】【WAV+CUE】
- 群星.2024-四方馆影视原声带【韶愔音乐】【FLAC分轨】
- 陈雷.1997-安锁咧【金圆唱片】【WAV+CUE】
- 关淑怡.2013-MY.FAVORITE.SK.3CD【环球】【WAV+CUE】
- Sweety.2006-花言乔语【丰华】【WAV+CUE】