可能重複:
How to upload a file from a site using Selenium's java inteface如何使用Selenium在Internet Explorer中自動上傳文件?
我是新來Selenium.Can你請電話我如何在Internet Explorer中使用Selenium自動化文件上傳?
可能重複:
How to upload a file from a site using Selenium's java inteface如何使用Selenium在Internet Explorer中自動上傳文件?
我是新來Selenium.Can你請電話我如何在Internet Explorer中使用Selenium自動化文件上傳?
這並不容易,而且出於很好的理由 - 安全性並不容易。如果您能夠上傳這樣的內容,那麼阻止某人使用相同方法上傳您的詳細信息的是什麼?
你也給了我們沒有例子有如此工作:
鑑於此範例網頁:
<html>
<head>
<style type="text/css">
.fileSave { color: red; }
</style>
</head>
<label for="fileUpload">File location:
<input type="file" id="fileUpload" />
<br>
<br>
<a href="" class="fileSave">Save file</a>
</body>
</html>
我能做到這一點,在C#:
Driver = new ChromeDriver();
var fileUploadControl = Driver.FindElement(By.Id("fileUpload"));
fileUploadControl.SendKeys("C:\File.txt");
var submitLink = Driver.FindElement(By.ClassName("fileSave"));
submitLink.Click();
這一直問several times,也在一些Selenium常見問題。
硒2(的webdriver)Java示例:
// assuming driver is a healthy WebDriver instance
WebElement fileInput = driver.findElement(By.xpath("//input[@type='file']"));
fileInput.sendKeys("C:/path/to/file.jpg");
硒RC,見this question。
這個想法是直接將文件的絕對路徑發送到您通常會點擊以獲取模式窗口的元素 - 即<input type='file' />
元素。
「如果你能夠上傳這樣的內容,什麼阻止某人使用相同的方法上傳你的詳細信息?」在一定程度上,CAPTCHA將會。 – fixxxer