2017-06-28 46 views
0

我試圖將文件上載到使用Selenium使用基於Eclipse這個代碼格式的文件:未能上傳使用Selenium

search = driver.find_element_by_xpath("//input[@type='file']") 
search.send_keys("D:/test.txt") 
search.send_keys(Keys.RETURN) 

此錯誤不斷顯示出來:

硒。 common.exceptions.WebDriverException:消息:文件未找到 :d:/test.txt

該文件是在地方,你認爲問題出在哪裏?

回答

1

我想原因是在路徑中使用的斜槓 - 我認爲它需要一個反斜槓。

如果您嘗試使用search.send_keys("D:\\test.txt")會怎麼樣?不知道是否需要雙反斜槓,所以你可以嘗試單一反斜槓。

編輯

我想我自己的簡單形式的代碼只需輸入[type = file],並提交按鈕:

search = browser.find_element_by_xpath("//input[@type='file']")  
search.send_keys("F:\\test.txt")         
submit = browser.find_element_by_css_selector("input[type=submit]") 
submit.click() 

而且在某種程度上,它的工作就好了,剛轉義反斜槓並使用Submit按鈕而不是使用ENTER按鈕。

因此,請確保您的文件實際上存在於您發佈的路徑中,並且此類代碼(至少在Windows上)工作得很好。此外,你應該確保你有這個文件的權限。

+0

試過單反反斜槓,都失敗了。 –

+0

我修改了我的答案後,我用簡單的形式與2個輸入字段 - 文件+提交我自己的代碼。 – Shuji

+0

爲我工作,謝謝! –

相關問題