濮阳杆衣贸易有限公司

主頁 > 知識(shí)庫 > selenium+python自動(dòng)化78-autoit參數(shù)化與批量上傳功能的實(shí)現(xiàn)

selenium+python自動(dòng)化78-autoit參數(shù)化與批量上傳功能的實(shí)現(xiàn)

熱門標(biāo)簽:400電話申請資格 舉辦過冬奧會(huì)的城市地圖標(biāo)注 遼寧智能外呼系統(tǒng)需要多少錢 阿里電話機(jī)器人對話 正安縣地圖標(biāo)注app 地圖地圖標(biāo)注有嘆號(hào) 電銷機(jī)器人系統(tǒng)廠家鄭州 qt百度地圖標(biāo)注 螳螂科技外呼系統(tǒng)怎么用

前言

前一篇autoit實(shí)現(xiàn)文件上傳打包成.exe可執(zhí)行文件后,每次只能傳固定的那個(gè)圖片,我們實(shí)際測試時(shí)候希望傳不同的圖片。
這樣每次調(diào)用的時(shí)候,在命令行里面加一個(gè)文件路徑的參數(shù)就行。

一、命令行參數(shù)

1.參數(shù)化傳入的參數(shù),可以通過autoit的命令行參數(shù):

  myProg.exe param1 “This is a string parameter” 99

在腳本中,可用以下變量獲取命令行參數(shù):

$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] 獲取的是命令行參數(shù)的總數(shù),在上例中$CmdLine[0]=3
  • $CmdLine[1]~$CmdLine[63] 獲取的是命令行參數(shù)第1到第63位,這個(gè)方式最多只能獲取63個(gè)參數(shù),不過正常情況下是足夠用的
  • $CmdLineRaw 獲取的是未拆分的所有參數(shù),是一個(gè)長字符串,這種情況下不局限與63個(gè)參數(shù)

2.將如下代碼保存為.exe文件后(文件名隨便取一個(gè):cmdjpg.exe),在cmd執(zhí)行一次,看是否成功

WinActivate("文件上傳");
ControlSetText("文件上傳", "", "Edit1", $CmdLine[1] );
Sleep(2000);
ControlClick("文件上傳", "", "Button1");

3.用python代碼執(zhí)行

# 需上傳圖片的路徑
file_path = "D:\\1.png"

# 執(zhí)行autoit上傳文件
os.system("C:\Users\Gloria\Desktop\cmdjpg.exe %s" % file_path) # 你自己本地的

二、批量上傳圖片

1.方法一:先把要上傳的圖片放到一個(gè)list下,然后for循環(huán)

# 把需要上傳的圖片放到一個(gè)list下
all_png = ["D:\\1.png", "D:\\2.png", "D:\\3.png", "D:\\4.png"]

# 循環(huán)點(diǎn)擊上傳圖片
for i in all_png:
  # 1點(diǎn)開編輯器圖片
 
  # 2點(diǎn)開文件上傳按鈕

  # 執(zhí)行autoit上傳文件
  os.system("C:\Users\Gloria\Desktop\cmdjpg.exe %s" % i) # 你自己本地的.exe路徑
  time.sleep(3)

2.方法二:把要上傳的圖片編號(hào),如:0.png , 1.png, 2.png這種(從0開始編號(hào)),放到同一目錄下,然后for循環(huán)

# 循環(huán)點(diǎn)擊上傳圖片
for i in range(4):
  # 1點(diǎn)開編輯器圖片

  # 2點(diǎn)開文件上傳按鈕

  # 文件名
  file_name = "D:\\%s.png" % i # 參數(shù)化路徑名稱

  # 執(zhí)行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
# 加載配置文件實(shí)現(xiàn)免登錄
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)

# 方法一:把需要上傳的圖片放到一個(gè)list下
all_png = ["D:\\1.png", "D:\\2.png", "D:\\3.png", "D:\\4.png"]

for i in all_png:
  # 點(diǎn)開編輯器圖片
  driver.find_elements_by_css_selector("img.mceIcon")[0].click()
  time.sleep(3)
  # 定位所有iframe,取第二個(gè)
  iframe = driver.find_elements_by_tag_name('iframe')[1]
  # 切換到iframe上
  driver.switch_to_frame(iframe)
  # 點(diǎn)開文件上傳按鈕
  driver.find_element_by_name('file').click()
  time.sleep(3)
  # 執(zhí)行autoit上傳文件
  print i
  os.system("C:\Users\Gloria\Desktop\cmdjpg.exe %s" % i) # 你自己本地的.exe路徑
  time.sleep(3)
  driver.switch_to_default_content() # 切回到主頁面


# # 方法二:循環(huán)點(diǎn)擊上傳圖片
# for i in range(4):
#   # 1點(diǎn)開編輯器圖片
# 
#   # 2點(diǎn)開文件上傳按鈕
# 
#   # 文件名
#   file_name = "D:\\%s.png" % i # 參數(shù)化路徑名稱
# 
#   # 執(zhí)行autoit上傳文件
#   os.system("C:\Users\Gloria\Desktop\cmdjpg.exe %s" % file_name) # 你自己本地的.exe路徑
#   time.sleep(3)

到此這篇關(guān)于selenium+python自動(dòng)化78-autoit參數(shù)化與批量上傳的文章就介紹到這了,更多相關(guān)python自動(dòng)化批量上傳內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • selenium+python自動(dòng)化測試環(huán)境搭建步驟
  • selenium+python自動(dòng)化測試之多窗口切換
  • selenium+python自動(dòng)化測試之鼠標(biāo)和鍵盤事件
  • selenium+python自動(dòng)化測試之頁面元素定位
  • selenium+python自動(dòng)化測試之使用webdriver操作瀏覽器的方法
  • selenium+python自動(dòng)化測試之環(huán)境搭建
  • Python Selenium異常處理的實(shí)例分析
  • python使用Windows的wmic命令監(jiān)控文件運(yùn)行狀況,如有異常發(fā)送郵件報(bào)警
  • Python 獲取異常(Exception)信息的幾種方法
  • Python讀寫csv文件流程及異常解決
  • python裝飾器實(shí)現(xiàn)對異常代碼出現(xiàn)進(jìn)行自動(dòng)監(jiān)控的實(shí)現(xiàn)方法
  • 教你利用Selenium+python自動(dòng)化來解決pip使用異常

標(biāo)簽:合肥 隨州 淘寶好評(píng)回訪 昭通 阜新 濟(jì)源 興安盟 信陽

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《selenium+python自動(dòng)化78-autoit參數(shù)化與批量上傳功能的實(shí)現(xiàn)》,本文關(guān)鍵詞  selenium+python,自動(dòng)化,78-autoit,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《selenium+python自動(dòng)化78-autoit參數(shù)化與批量上傳功能的實(shí)現(xiàn)》相關(guān)的同類信息!
  • 本頁收集關(guān)于selenium+python自動(dòng)化78-autoit參數(shù)化與批量上傳功能的實(shí)現(xiàn)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    德惠市| 汕头市| 盐城市| 中江县| 大方县| 奉节县| 镇平县| 萝北县| 宣化县| 苍溪县| 巴林右旗| 额济纳旗| 大兴区| 绥宁县| 阿图什市| 嘉鱼县| 汽车| 和平县| 区。| 宁化县| 盐边县| 澜沧| 博湖县| 大化| 康马县| 镇远县| 富川| 新晃| 孟连| 鹤庆县| 浪卡子县| 阿克陶县| 岳池县| 昔阳县| 安龙县| 建阳市| 武宣县| 柯坪县| 武安市| 兰溪市| 屏山县|