黄色网页视频 I 影音先锋日日狠狠久久 I 秋霞午夜毛片 I 秋霞一二三区 I 国产成人片无码视频 I 国产 精品 自在自线 I av免费观看网站 I 日本精品久久久久中文字幕5 I 91看视频 I 看全色黄大色黄女片18 I 精品不卡一区 I 亚洲最新精品 I 欧美 激情 在线 I 人妻少妇精品久久 I 国产99视频精品免费专区 I 欧美影院 I 欧美精品在欧美一区二区少妇 I av大片网站 I 国产精品黄色片 I 888久久 I 狠狠干最新 I 看看黄色一级片 I 黄色精品久久 I 三级av在线 I 69色综合 I 国产日韩欧美91 I 亚洲精品偷拍 I 激情小说亚洲图片 I 久久国产视频精品 I 国产综合精品一区二区三区 I 色婷婷国产 I 最新成人av在线 I 国产私拍精品 I 日韩成人影音 I 日日夜夜天天综合

python+selenium+autoit實現文件上傳功能

系統 1931 0

問題

在做web端ui層自動化的時候會碰到文件上傳的操作,經常有朋友問到,這里總結一下

解決方案

第一種:type=file的上傳文件,類似如下的

使用類似這樣的代碼就可以完成:

            
driver.find_element('name','file').send_keys('./小強測試品牌.png')
          

第二種:就是第一種除外的,實現起來較為麻煩,這里用到了autoit,大致步驟如下:

1、下載并安裝autoit,之后在開始菜單可以看到如下

python+selenium+autoit實現文件上傳功能_第1張圖片

AutoIt Windows Info 用于識別Windows控件信息

Compile Script to.exe 用于將AutoIt生成 exe 執行文件

Run Script 用于執行AutoIt腳本

SciTE Script Editor 用于編寫AutoIt腳本

2、上傳功能如下

python+selenium+autoit實現文件上傳功能_第2張圖片

3、識別元素,主要是上圖中的文件名輸入框和打開按鈕,使用AutoIt Windows Info完成,記錄結果如下:

文件名輸入框的class 為“Edit”,Instance為“1”

打開按鈕的class 為“Button”,Instance為“1”

4、編寫腳本,使用SciTE Script Editor,內容如下:

            
ControlFocus("文件上傳", "","Edit1")
WinWait("[CLASS:#32770]","",10)
ControlSetText("文件上傳", "", "Edit1","D:python_workspaceQiangSEAutopic小強測試品牌.jpg")
Sleep(2000)
ControlClick("文件上傳", "","Button1");
          

上述代碼中特別需要注意“文件上傳”字樣是你點擊上傳按鈕之后彈出的對話框的title,可能每個系統會不一樣

5、驗證腳本

保證頁面的上傳對話框打開,然后運行腳本tools>go

6、打開Compile Script to.exe工具,將其生成為exe可執行文件

python+selenium+autoit實現文件上傳功能_第3張圖片

7、python腳本中調用

            
up=self.driver.find_element('class name','avatar-uploader-trigger')
up.find_element('class name','ant-btn').click()
os.system('D:\python_workspace\QiangSEAuto\upload.exe')
time.sleep(20)
          

其他

其實還有其他的解決方法,感興趣的自行研究吧,比如還可以利用如下的方式:

Python pywin32庫,識別對話框句柄,進而操作

SendKeys 庫

keybd_event 模擬按鍵

總結

以上所述是小編給大家介紹的python+selenium+autoit實現文件上傳,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網站的支持!


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論