Hallo liebes java-forum,
ich bin gerade dabei Java zu lernen. Die Basics sollte ich durch andere Programmiersprache wie z.B. .NET,C# und C++ drauf haben.
Mein zweites Größeres Projekt ist nun ein Web-Bot, der sich automatisch auf einer Website anmelden soll und von dieser Informationen auslesen soll. Mit .Net habe ich schon eine Lösung für eine ähnliche Website die zwar unelegant(läuft mir RegularExpression und IE-Control) aber funktionstüchtig ist.
Ich habe mich dann erst mal in die Materie eingelesen und bin dabei auf Selenium gestoßen. Mit Selenium soll ein solcher Bot deutlich einfacher zu machen sein als mit den Java internen funktionen.
Bis jetzt ist es wirklich erstaunlich einfach. Hier mal mein Code den ich bisher habe:
Das eintragen der login-Daten funktioniert einwandfrei. Allerdings habe ich schwierigkeiten, den Knopf für den Login zu finden und zu klicken(ein einfaches "submit" reicht leider nicht aus). Der Code des Buttons der gedrückt werden soll sieht so aus:
Hat jemand von euch eine Idee, wie ich diesen Button mit Hilfe von Selenium drücken kann ?
Grüße,
Mansi
PS: Ich hoffe das hier ist das richtige Unterforum dafür
ich bin gerade dabei Java zu lernen. Die Basics sollte ich durch andere Programmiersprache wie z.B. .NET,C# und C++ drauf haben.
Mein zweites Größeres Projekt ist nun ein Web-Bot, der sich automatisch auf einer Website anmelden soll und von dieser Informationen auslesen soll. Mit .Net habe ich schon eine Lösung für eine ähnliche Website die zwar unelegant(läuft mir RegularExpression und IE-Control) aber funktionstüchtig ist.
Ich habe mich dann erst mal in die Materie eingelesen und bin dabei auf Selenium gestoßen. Mit Selenium soll ein solcher Bot deutlich einfacher zu machen sein als mit den Java internen funktionen.
Bis jetzt ist es wirklich erstaunlich einfach. Hier mal mein Code den ich bisher habe:
Java:
// Erstellt einen neuen WebDriver und füllt diesen mit dem Sourcecode von
// der Webseite
WebDriver driver = new HtmlUnitDriver();
driver.get("*Link zur Webseite*");
// Sucht die Textfelder für die Benutzernamen/Passwort Eingabe und füllt diese
WebElement loginData = driver.findElement(By.name("user"));
loginData.sendKeys("username");
loginData = driver.findElement(By.name("password"));
loginData.sendKeys("passwort");
// Schickt die Seite ab
loginData.submit();
// Gibt den Seitentitel aus
System.out.println("Page title is: " + driver.getTitle());
Das eintragen der login-Daten funktioniert einwandfrei. Allerdings habe ich schwierigkeiten, den Knopf für den Login zu finden und zu klicken(ein einfaches "submit" reicht leider nicht aus). Der Code des Buttons der gedrückt werden soll sieht so aus:
HTML:
<a class="login_button" onclick="$('#login_form').trigger('submit'); return false;" href="#">
<span class="button_left"></span>
<span class="button_middle">Login</span>
<span class="button_right"></span>
</a>
Hat jemand von euch eine Idee, wie ich diesen Button mit Hilfe von Selenium drücken kann ?
Grüße,
Mansi
PS: Ich hoffe das hier ist das richtige Unterforum dafür