1
如何在無頭瀏覽器中使用selenium java中的robot類上傳文件作爲sendkeys()方法不適用於我的情況。我使用Firefox和硒的網絡驅動程序的Java爲我的劇本如何在無鉛瀏覽器中使用selenium中的機器人類上傳文件java
如何在無頭瀏覽器中使用selenium java中的robot類上傳文件作爲sendkeys()方法不適用於我的情況。我使用Firefox和硒的網絡驅動程序的Java爲我的劇本如何在無鉛瀏覽器中使用selenium中的機器人類上傳文件java
public static void setClipboardData(String string) {
StringSelection stringSelection = new StringSelection(string);
Toolkit.getDefaultToolkit().getSystemClipboard().setContents(stringSelection,null);
}
setClipboardData(path);
//native key strokes for CTRL, V and ENTER keys
Robot robot = new Robot();
robot.keyPress(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_V);
robot.keyRelease(KeyEvent.VK_CONTROL);
robot.keyPress(KeyEvent.VK_ENTER);
robot.keyRelease(KeyEvent.VK_ENTER);
注:如果使用無頭瀏覽器,如Chrome或phantomjs,機器人類將當前窗口的控制,並在其發送路徑。此外,如果您使用autoIT,腳本將等待顯示活動窗口。所以顯然腳本將被暫停,並且無法找到下一個元素。
AutoIt腳本
WinWaitActive("Open")
Send(@ScriptDir & "\logo.png")
Send("{ENTER}")
是否有必要使用'機器人class'上傳文件?你有沒有試過'AutoIT'? –
沒必要請讓我知道如何使用AutoIT上傳 – sufiya