我有一个基于Selenium WebDriver
的脚本来自动上传文件。它逐个上传文件列表。我使用AutoIT
脚本来处理对话窗口,文件选择器窗口。参数$CmdLine[1]
包含实际文件的路径。
ControlFocus("Open a file","","Edit1")
ControlSetText("Open a file","","Edit1", $CmdLine[1])
ControlClick("Open a file","","Button1")
我从Java
代码执行它,如下所示:
Runtime.getRuntime().exec(autoITExecutable);
它会打开对话框窗口,因此如果不关注浏览器窗口就无法工作。
文件上传字段就像这个演示一样: https://encodable.com/uploaddemo/
答案 0 :(得分:2)
我为你提供的链接运行了简单的脚本,效果很好
import os
from selenium import webdriver
driver = webdriver.Chrome()
driver.get("https://encodable.com/uploaddemo/")
driver.find_element_by_name("uploadname1").send_keys(os.getcwd() + "/test.csv")
driver.find_element_by_name("email_address").send_keys("none@getnada.com")
driver.find_element_by_name("first_name").send_keys("Tarun")
driver.find_element_by_id("uploadbutton").click()
答案 1 :(得分:0)
尝试使用类似格式的代码,如下所示,然后尝试:
java.lang.NullPointerException