Kostenloser Test-Proxy

Selenium ist ein leistungsstarkes Tool für die Webautomatisierung, mit dem Entwickler mit Webseiten interagieren und verschiedene Aktionen ausführen können, z. B. auf Schaltflächen klicken, Text eingeben und sogar scrollen. In diesem Artikel erfahren Sie, wie Sie mit Objekten auf einer Webseite arbeiten und Formulare mit Selenium in Python ausfüllen. Wir werden uns mit praktischen Beispielen, Tools und Techniken befassen, um Webinteraktionen effektiv zu automatisieren.

Einrichten von Selenium mit Python

Bevor wir uns in die Arbeit mit Objekten und Formularen vertiefen, beginnen wir mit der Einrichtung von Selenium in Python. Hier sind die grundlegenden Schritte für den Einstieg:

Installieren Sie Selenium:

pip install selenium

Laden Sie WebDriver herunter: Stellen Sie sicher, dass Sie den richtigen WebDriver für Ihren Browser haben (z. B. ChromeDriver für Google Chrome).

Zu einer Webseite navigieren

Zunächst müssen wir eine Webseite aufrufen. In diesem Beispiel verwenden wir YouTube.

from selenium import webdriver

# Initialize WebDriver
driver = webdriver.Chrome(executable_path='/path/to/chromedriver')

# Navigate to YouTube
driver.get('https://www.youtube.com')

Interagieren mit Objekten auf der Seite

Suchen und Klicken einer Schaltfläche

Eine häufige Aufgabe bei der Webautomatisierung ist das Klicken auf eine Schaltfläche. So können Sie eine Schaltfläche finden und darauf klicken:

# Find the sign-in button by its XPath
sign_in_button = driver.find_element_by_xpath('//*[@id="buttons"]/ytd-button-renderer/a')

# Click the button
sign_in_button.click()

Formulare ausfüllen

Als Nächstes füllen wir ein Formular aus, beispielsweise indem wir einen Benutzernamen in ein Anmeldeformular eingeben:

# Find the username input field
username_field = driver.find_element_by_xpath('//*[@id="identifierId"]')

# Enter text into the username field
username_field.send_keys('your_username')

# Find and click the next button
next_button = driver.find_element_by_xpath('//*[@id="identifierNext"]/div/button')
next_button.click()

Extrahieren von Text und Attributen

Mit Selenium können Sie Text und Attribute aus Webelementen extrahieren. Dies kann für verschiedene Aufgaben nützlich sein, beispielsweise zum Scrapen von Daten.

# Find a video title
video_title = driver.find_element_by_xpath('//*[@id="video-title"]')

# Extract and print the text
print(video_title.text)

# Extract and print an attribute
print(video_title.get_attribute('href'))

Scrollen auf der Seite

Manchmal müssen Sie auf der Seite scrollen, um auf Elemente zuzugreifen, die nicht sofort sichtbar sind.

from selenium.webdriver.common.keys import Keys

# Scroll down the page
html = driver.find_element_by_tag_name('html')
html.send_keys(Keys.PAGE_DOWN)

Arbeiten mit mehreren Elementen

Wenn Sie mit mehreren Elementen interagieren müssen, etwa einer Liste von Videos, können Sie eine Schleife verwenden:

# Find all video titles on the page
video_titles = driver.find_elements_by_xpath('//*[@id="video-title"]')

# Print the titles of all videos
for title in video_titles:
    print(title.text)

Tabellen zum besseren Verständnis

Um die Datenextraktion besser zu visualisieren, verwenden wir ein Tabellenformat.

AufgabeCodeausschnitt
Navigieren Sie zu YouTubedriver.get('https://www.youtube.com')
Schaltfläche „Suchen“sign_in_button = driver.find_element_by_xpath('//*[@id="buttons"]/ytd-button-renderer/a')
Klicken Sie auf die Schaltflächesign_in_button.click()
Formular ausfüllenusername_field.send_keys('your_username')
Text extrahierenvideo_title.text
Attribut extrahierenvideo_title.get_attribute('href')
Zur Seite scrollenhtml.send_keys(Keys.PAGE_DOWN)
Mehrere Elementevideo_titles = driver.find_elements_by_xpath('//*[@id="video-title"]')

Abschluss

Die Verwendung von Selenium mit Python zur Webautomatisierung kann Aufgaben wie das Ausfüllen von Formularen und die Interaktion mit Webelementen erheblich rationalisieren. In diesem Handbuch werden die Grundlagen der Einrichtung von Selenium, der Navigation auf Webseiten, des Klickens auf Schaltflächen, des Ausfüllens von Formularen, des Extrahierens von Daten und des Scrollens von Seiten behandelt. Wenn Sie diese Techniken beherrschen, können Sie eine Vielzahl von Webinteraktionen automatisieren und so die Produktivität und Effizienz steigern.

Kommentare (0)

Hier gibt es noch keine Kommentare, Sie können der Erste sein!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Proxy auswählen und kaufen

Rechenzentrums-Proxys

Rotierende Proxys

UDP-Proxys