Die Funktion getAttribute() in Selenium Python

Rana Hasnain Khan 15 Februar 2024
  1. die getAttribute()-Funktion in Selenium Python
  2. Vorteile der Funktion getAttribute() in Selenium Python
Die Funktion getAttribute() in Selenium Python

Das Python-Modul für Selenium wurde entwickelt, um einen automatisierten Testprozess bereitzustellen. Die Selenium-Python-Bindungen enthalten eine einfache API zum Schreiben von Selenium WebDriver-Funktions-/Akzeptanztests.

Die Fähigkeit, sich zu bewegen, ist nicht sehr vorteilhaft. Wir wollen mit den Seiten interagieren, genauer gesagt mit den HTML-Stücken, die aus einer Seite bestehen.

Dieser Artikel erklärt die Verwendung der Methode getAttribute() von Selenium.

die getAttribute()-Funktion in Selenium Python

Die Methode getAttribute() kann Elementeigenschaften abrufen, wie z. B. das href-Attribut eines Anchor-Tags. Diese Funktion versucht zunächst, den Wert einer angegebenen Eigenschaft zurückzugeben.

Existiert keine solche Eigenschaft, wird der gleichnamige Wert des Attributs zurückgegeben. Es wird jedoch keine zurückgegeben, wenn in einem Element keine Attribute vorhanden sind.

Was ist ein Attribut

Ein Attribut in HTML definiert die Eigenschaften eines Elements. Attribute bestehen aus Name-Wert-Paarungen, was bedeutet, dass jedes Attribut einen Wert und einen Namen hat.

Ihre Werte sind in doppelte Anführungszeichen eingeschlossen und werden im öffnenden Tag bereitgestellt. Zu den HTML-Attributen gehören:

< a target="_blank" href="#" class="btn" >

<img src="#" class="image" alt="myImage" >

< input style="height:50px;" class="form-control" type="email" placeholder="Enter email" name="emailAddress" id="emailAddress" >

< button onclick="#" class="btn" value="" >Login< /button >

Wie im obigen Beispiel erhalten HTML-Tags eine Vielzahl von Eigenschaften und Werten. Zum Beispiel hatte das Tag input viele Attribute wie class, style, placeholder, type, name und id.

Für jede Eigenschaft gibt es eine Zahl in doppelten Anführungszeichen. Nachdem wir nun verstanden haben, was ein Attribut für ein HTML-Webelement bedeutet oder wie es aussieht, wollen wir prüfen, warum die Methode getAttributes() nützlich ist.

Vorteile der Funktion getAttribute() in Selenium Python

Stellen Sie sich eine Situation vor, in der wir den Platzhalterinhalt in einem Eingabefeld, die Bildquelle und die Feldgröße überprüfen müssen. Die Methode getAttribute() löst dieses Problem in dieser Situation.

Um den Wert eines Attributs zu erhalten, suchen Sie das Webelement, das es enthält, und verwenden Sie die Methode getAttribute().

Lassen Sie uns die Syntax dieser Methode in einem realen Beispiel diskutieren, wie unten gezeigt.

# python

GetElem.get_attribute("href")

Wie Sie der obigen Syntax entnehmen können, versuchen wir, das Attribut href zu erhalten. Lassen Sie uns nun ein funktionierendes Beispiel zum Abrufen von Werten mit der Methode getAttribute() durchgehen, nachdem wir die grundlegende Syntax für ihre Verwendung gelernt haben.

Um ein einfaches Testskript zu entwickeln, verwenden wir eine Dummy-Website. Schauen wir uns ohne weiteres Herumprobieren den Anwendungsfall an, bevor wir zum Code übergehen:

  1. Wir gehen zuerst zur Dummy-Site.
  2. Auf dem Homepage-Frontend erhalten wir das href-Attribut eines Links.
  3. Wir erhalten auch das Attribut src eines Bildes.

Sehen wir uns nun den Code für diesen Anwendungsfall an.

Beispielcode:

# python
from selenium import webdriver

chromeDriver = webdriver.Chrome()

chromeDriver.get("https://www.inventicosolutions.com/")

getElemByLink = chromeDriver.find_element_by_link_text("About Us")

print(getElemByLink.get_attribute("href"))

getElemByClass = chromeDriver.find_element_by_xpath(
    "/html/body/main/div/div[1]/section[1]/div/div/div/div[7]/div/img"
)

print(getElemByClass.get_attribute("src"))

Ausgang:

Selen getAttribute() Beispiel in Python

Wie wir im obigen Beispiel sehen können, können wir mit der Methode getAttribute() jedes Attribut aus einem HTML-Tag abrufen. Diese Methode kann uns beim Web Scraping helfen, bestimmte Daten von einer Website zu erhalten, z. B. Links und Bilder.

Rana Hasnain Khan avatar Rana Hasnain Khan avatar

Rana is a computer science graduate passionate about helping people to build and diagnose scalable web application problems and problems developers face across the full-stack.

LinkedIn

Verwandter Artikel - Python Selenium