selenium實現檔案上傳 python

2021-10-03 21:25:12 字數 1621 閱讀 9046

from selenium import webdriver

import unittest

import time

import traceback

from selenium.webdriver.support.ui import webdriverwait

from selenium.webdriver.support import expected_conditions as ec

from selenium.webdriver.common.by import by

from selenium.common.exceptions import timeoutexception,nosuchelementexception

class

testdemo

(unittest.testcase)

:def

setup

(self)

: self.driver = webdriver.chrome(executable_path=

"驅動路徑"

)def

test_uploadfile

(self)

: url =

'' self.driver.get(url)

try:

wait = webdriverwait(self.driver,10,

0.2)

wait.until(ec.element_to_be_clickable(

(by.id,

'file'))

)except timeoutexception:

print

(traceback.print_exc())

except nosuchelementexception:

print

(traceback.print_exc())

except exception:

print

(traceback.print_exc())

else

: filebox = self.driver.find_element_by_id(

"file_id"

) filebox.send_keys(r"c\\test.txt"

)#要上傳檔案的路徑

time.sleep(4)

#暫停,檢視是否正常執行

submit = self.driver.find_element_by_id(

"submit"

) submit.click(

)#檔案上傳需要時間,可以新增顯式等待上傳成功

#通過title_is判斷成功後的頁面標題,符合期望,執行後續的**

wait.until(ec.title_is(

"檔案上傳成功"))

defteardown

(self)

: self.driver.quit(

)if __name__ ==

'__main__'

: unittest.main(

)

Selenium上傳檔案

selenium自帶了對應的api可以上傳問題,如果這個上傳檔案的html code中顯示的type是file那麼你就可以使用下面的 上傳檔案。click the upload button to upload the file this is for hte webfile element the...

selenium上傳檔案

1.第一種形式 input輸入框上傳檔案 可以理解為普通的輸入框輸入,我們只要傳入檔案路徑即可。普通input框上傳檔案 from selenium import webdriver driver webdriver.chrome driver.get upload driver.find elem...

selenium 檔案上傳

檔案上傳是web頁面上很常見的乙個功能,自動化成功中操作起來卻不是那麼簡單。一般分兩個場景 一種是input標籤,這種可以用 selenium 提供的send keys 方法輕鬆解決 另外一種非input標籤實現起來比較困難,可以借助 autoit 工具或者 sendkeys 第三方庫。本篇以的上傳...