我正在尝试上传 pdf 文件,但它引发了异常:线程“主”org.openqa.selenium.WebDriverException 中的异常:未知错误:无法聚焦元素下面是代码:public class FileUploadPopUp { public static void main(String[] args) { System.setProperty("webdriver.chrome.driver", "G://ChromeDriver//chromedriver.exe"); WebDriver driver=new ChromeDriver(); driver.manage().window().maximize(); driver.get("https://pdf2doc.com/"); driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS); driver.findElement(By.id("pick-files")).sendKeys("F:\\Selenium Complete Notes.pdf"); }}这是为了自动执行文件上传操作。我想上传一个 pdf 文件。谁能帮我解决这个问题?
2 回答
![?](http://img1.sycdn.imooc.com/54584dd900014f6c02200220-100-100.jpg)
DIEA
TA贡献1820条经验 获得超2个赞
要上传文件,您必须使用input具有文件类型的元素,但您的pick-files选择器是 a div,这就是您收到错误的原因。使用input[type=file]CSS 选择器:
public class FileUploadPopUp {
public static void main(String[] args) {
System.setProperty("webdriver.chrome.driver", "G://ChromeDriver//chromedriver.exe");
WebDriver driver=new ChromeDriver();
driver.manage().timeouts().implicitlyWait(30, TimeUnit.SECONDS);
driver.manage().window().maximize();
driver.get("https://pdf2doc.com/");
driver.findElement(By.cssSelector("input[type=file]")).sendKeys("F:\\Selenium Complete Notes.pdf");
}
}
![?](http://img1.sycdn.imooc.com/54584d080001566902200220-100-100.jpg)
潇潇雨雨
TA贡献1833条经验 获得超4个赞
如果文件输入不可编辑 - 您可以尝试value
使用 JS 更改属性:
((JavascriptExecutor) driver).executeScript("arguments[0].setAttribute('value', 'F:\\Selenium Complete Notes.pdf');", element);
添加回答
举报
0/150
提交
取消