1. 程式人生 > >input型別上傳多個檔案(selenium+Python)

input型別上傳多個檔案(selenium+Python)

一般上傳方法分為兩種:input型別和非input型別,這裡具體分析input型別。

html檔案:

【上傳圖示】按鈕元素定位中包含name=“file”   type="file"  果斷採用input+sendkeys模式。

一、上傳一張圖片,上程式碼:

解釋一下:

1、同個頁面或者切換到不同頁面中都存在多個iframe,所以定位元素時需要切入對的iframe,否則死活定位不到元素。

2、填寫表單時欄位超過一頁無法全部都展示出來,此時需要拖動下滾動條載入剩下的欄位才能獲取到相關的元素,採用win32api的mouse_event方法(如何使用可參照win32 API大全,地址:

http://www.esk365.com/zxsc/prg/winapia/)。

3、頁面中存在多個上傳按鈕均為input型別,先定位一組元素,然後根據需要去找第幾個的input,從0開始數:


二、上傳多張圖片
思路:一開始的想法是上傳一張圖片後接著再上傳一張,迴圈上傳。
這個思路是正確的,但是操作起來卻不行,一直報錯,如下:

報錯的原因:每定位上傳一次頁面就會自動重新整理,如果再次上傳則找不到元素

解決方案:上傳一次後如果再上傳第二次,需要重新定位元素,正確程式碼如下:

 

 <正文完>