Ich versuche mich in meinem Profil anzumelden, bekomme aber ein Problem, wenn ich versuche, das Passwort hinzuzufügen. Ich kann den Cursor in der Passwortbox erscheinen lassen, aber wenn ich versuche, die Schlüssel zu senden, wird eine Ausnahme ausgelöst. Gibt es dafür einen Sicherheitsgrund? Ist das Passwort in der HTML/XML-Datei versteckt, damit keine Automatisierung stattfindet?Selen sendet Text an das Passwortfeld
import org.openqa.selenium.By;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.WebElement;
import org.openqa.selenium.chrome.ChromeDriver;
public class mainTester {
static WebDriver driver;
public static void main(String[] args) throws InterruptedException{
setUp();
}
public static void setUp() throws InterruptedException {
// Optional, if not specified, WebDriver will search your path for chromedriver.
System.setProperty("webdriver.chrome.driver", "C:\\Program Files (x86)\\Google\\Chrome\\Application\\chromedriver.exe");
driver = new ChromeDriver();
driver.get("http://www.google.com/xhtml");
// Thread.sleep(5000); // Let the user actually see something!
WebElement searchBox = driver.findElement(By.name("q"));
searchBox.sendKeys("C programming forum");
searchBox.submit();
Thread.sleep(5000);
driver.findElement(By.linkText("C Board - Cprogramming.com")).click();
Thread.sleep(5000); // Let the user actually see something!
WebElement userEnter = driver.findElement(By.name("vb_login_username"));
userEnter.sendKeys("myusername");
WebElement userEnter2 = driver.findElement(By.name("vb_login_password_hint"));
userEnter2.sendKeys("mypassword");
// searchBox.submit();
Thread.sleep(5000); // Let the user actually see something!
System.out.println("Finished");
//driver.quit();
}
}
die html ist wie so
<input type="text" class="textbox default-value" tabindex="102" name="vb_login_password_hint" id="navbar_password_hint" size="10" value="Password" style="display: inline;">
und der Fehler ist
Exception in thread "main" org.openqa.selenium.WebDriverException: unknown error: cannot focus element
fantastisch, das funktionierte. Weißt du warum es so ist? Ist das für Sicherheitszwecke? –
@ Vogelscheuche- ja, sieht aus wie eine einfache Gegenmaßnahme zu Web-Scraping-Bots. – alecxe