一般上傳方法分為兩種: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開始數:
二、上傳多張圖片
思路:一開始的想法是上傳一張圖片后接着再上傳一張,循環上傳。
這個思路是正確的,但是操作起來卻不行,一直報錯,如下:
報錯的原因:每定位上傳一次頁面就會自動刷新,如果再次上傳則找不到元素
解決方案:上傳一次后如果再上傳第二次,需要重新定位元素,正確代碼如下:
<正文完>