selenium---上傳檔案(send_keys)
阿新 • • 發佈:2020-08-27
web自動化中經常會遇到檔案上傳的操作,這時候我們應該怎麼進行元素定位,已經選擇我們對應的檔案進行上傳呢?selenium中有沒有其中的方法可以幫助我們呢?
檔案上傳
檔案上傳一般大致可以分為兩種,一種是input標籤的,一種非input標籤的。這裡肯定有小夥伴們什麼是input標籤的,這裡表示的就是HTML程式碼中的input標籤。
這裡已百度為例:
我們找到選擇圖片這裡,檢視標籤名為input標籤。既然是input標籤,那麼就直接可以通過send_keys方法進行輸入。
注:這裡的輸入為需要上傳檔案的地址。
from selenium import webdriver importtime driver = webdriver.Chrome() driver.get('https://www.baidu.com') # 定點陣圖片 driver.find_element_by_class_name('soutu-btn').click() time.sleep(3) # 定位選擇圖片 driver.find_element_by_class_name('upload-pic').send_keys('D:\\123.jpg')
從上圖可以看出來,我們已經成功的通過send_keys成功的上傳圖片了。那麼如果不是input標籤的應該怎麼做呢?前面介紹過pywinauto來進行控制windows控制元件來進行上傳檔案。大家可以動手自己寫一寫,安靜後面給大家補上。
如果安靜寫的文章如果對您有幫助,點個關注,持續更新。不懂的或者寫錯的地方,可以下方進行留言。感謝支援!