Webelement-Methoden in Selenium Python

Fariba Laiq 15 Februar 2024
  1. Installieren Sie Selenium und Chrome WebDriver
  2. Webelementmethoden in Selenium Python
Webelement-Methoden in Selenium Python

Selenium ist ein leistungsstarkes Automatisierungs- und Testtool für Webbrowser. Wir schreiben Skripte mit Selenium, das den Webbrowser steuert und bestimmte Aktionen ausführt.

Installieren Sie Selenium und Chrome WebDriver

Um Selenium zu installieren, verwenden wir den folgenden Befehl.

#Python 3.x
pip install selenium

ChromeDriver ist eine weitere ausführbare Datei, die Selenium WebDriver verwendet, um mit Chrome zu interagieren. Wenn wir Aufgaben im Chrome-Webbrowser automatisieren möchten, müssen wir auch ChromeDriver installieren.

Je nach Version des Chrome-Browsers müssen wir einen kompatiblen Treiber dafür auswählen. Im Folgenden sind die Schritte zum Installieren und Konfigurieren des Chrome-Treibers aufgeführt:

  1. Klicken Sie auf diesen Link. Laden Sie den Chrome-Treiber entsprechend der Version Ihres Chrome-Browsers und der Art des Betriebssystems herunter.
  2. Wenn Sie die Version Ihres Chrome-Browsers finden möchten, klicken Sie auf die drei Punkte in der oberen rechten Ecke von Chrome, klicken Sie auf Hilfe und wählen Sie Über Google Chrome. Sie können die Chrome-Version im Abschnitt Info sehen.
  3. Extrahieren Sie die ZIP-Datei und führen Sie den Chrome-Treiber aus.

Webelementmethoden in Selenium Python

Ein Webelement ist ein HTML-Element auf der Website. Dies kann ein Textfeld, eine Schaltfläche, eine Bildlaufleiste usw. sein.

Es ist etwas, mit dem wir interagieren möchten, z. B. einen Klick ausführen, ein Textfeld ausfüllen usw. Sobald wir ein Webelement in Python erhalten, können wir viele Methoden auf dieses von Selenium bereitgestellte Element anwenden.

Zum Beispiel haben wir das folgende Webelement in HTML.

<input type="text" name="email" id="email_id" />

Wir verwenden das folgende Code-Snippet, um ein Webelement anhand seines Namens zu finden.

element_tf = driver.find_element_by_name("email")

Oder, wenn wir es anhand seiner id lokalisieren, verwenden wir diese Methode.

element_tf = driver.find_element_by_id("email_id")

Nachdem wir das Element erhalten haben, können wir viele Methoden darauf anwenden. Einige der weit verbreiteten Verfahren und ihre Beschreibung sind wie folgt.

Elementmethode Beschreibung
click() Klickt auf ein beliebiges Element.
clear() Löscht jeglichen Text aus einem Textfeld.
send_keys() Gibt den Text in die Textfelder ein.
text Ruft den Text des aktuellen Elements ab.
screenshot() Erstellt einen Screenshot des aktuellen Elements und speichert ihn als PNG-Datei.
submit() Senden Sie die Daten des Formulars, nachdem wir die Eingabe der Details abgeschlossen haben.
location Ruft die Position des aktuellen Elements ab.
size Gibt die Größe des Elements zurück.
tag_name Gibt den Namen des Tags des aktuellen Elements zurück.
is_selected() Gibt einen booleschen Wert zurück, der angibt, ob das Element ausgewählt ist oder nicht.
is_displayed() Gibt einen booleschen Wert zurück, der angibt, ob das Element für den Benutzer auf dem Bildschirm sichtbar ist oder nicht
get_property() Gibt die Eigenschaft des Elements wie die Eigenschaft text_length des Ankertexts zurück.
get_attribute() Gibt das Attribut des Elements zurück, beispielsweise das Attribut href des Anchor-Tags.

Code, der Webelementmethoden demonstriert

Wir haben einige der oben genannten Methoden im folgenden Code verwendet. Wir erhalten die Textfelder email und Passwort sowie den Login-Button anhand ihrer Namen mit der Methode find_view_by_name().

Wir haben die Dummy-E-Mail und das Passwort mit der Methode send_keys() eingegeben und das Feld password mit der Methode clear() gelöscht. Wir haben den Text, den Ort und den Tag-Namen der Anmeldeschaltfläche mit den Methoden text, location und tag_name extrahiert.

Ob der Login-Button ausgewählt und angezeigt wird, haben wir mit den Methoden is_selected() und is_displayed() geprüft. Schließlich haben wir mit der Methode click() auf den Login-Button geklickt.

# Python 3.x
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time

driver = webdriver.Chrome(r"E:\download\chromedriver.exe")
driver.maximize_window()
driver.get("https://discpersonalitytesting.com/login-here/")
email = "myemail@email.com"
password = "mypassword1@23"
email_textfield = driver.find_element_by_name("email")
password_textfield = driver.find_element_by_name("password")
login_button = driver.find_element_by_name("LoginDAPLoginForm")
email_textfield.send_keys(email)
time.sleep(2)
password_textfield.send_keys(password)
time.sleep(3)
password_textfield.clear()
password_textfield.send_keys(password)
time.sleep(2)
print(login_button.text)
print(login_button.location)
print(login_button.is_selected())
print(login_button.is_displayed())
print(login_button.tag_name)
login_button.click()

Ausgabe:

Login
{'x': 251, 'y': 499}
False
True
button

Elementmethoden

Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

Verwandter Artikel - Python Selenium