Selenium WebDriver

Selenium WebDriver ist die Kernkomponente von Selenium. Es bietet eine API für die Interaktion mit Browsern, sodass Entwickler den Browser über Programmiersprachen steuern und verschiedene Operationen ausführen können.

Browser starten

Selenium WebDriver unterstützt mehrere Browser (wie Chrome, Firefox, Edge usw.).

Bevor Sie den Browser starten, müssen Sie den entsprechenden Browser-Treiber herunterladen und konfigurieren (wie ChromeDriver, GeckoDriver usw.). Einzelheiten finden Sie unterSelenium-Installation。

Codebeispiel zum Starten eines Browsers (Python).

In Selenium 4 wird ein Service-Objekt eingeführt, um den Treiberpfad festzulegen. Dieser Ansatz ist flexibler und entspricht den Design-Spezifikationen von Selenium 4.

Selenium-4-Beispiel

from selenium import webdriver
from selenium.webdriver.chrome.service import Service as ChromeService

service = ChromeService(executable_path="PATH_TO_DRIVER")
options = webdriver.ChromeOptions()
driver = webdriver.Chrome(service=service, options=options)
  1. Importieren Sie die erforderlichen Module (webdriverundChromeService)。

  2. ErstelleChromeServiceObjekt, das den Pfad zu ChromeDriver angibt.

  3. ErstelleChromeOptionsObjekt, das zum Konfigurieren der Browser-Startoptionen verwendet wird.

  4. Verwenden Siewebdriver.Chrome()Starten Sie den Chrome-Browser und übergeben SieserviceundoptionsParameter überschrieben werden.

In Selenium 3 und früheren Versionen wird der Treiberpfad normalerweise direkt in webdriver.Chrome() festgelegt, zum Beispiel:

Selenium-3-Beispiel

from selenium import webdriver

# ChromeDriver-Pfad festlegen
driver_path = "/path/to/chromedriver"

# Chrome-Browser starten
driver = webdriver.Chrome(executable_path=driver_path)

Browser schließen

Verwenden Sie diequit()-Methode, um den Browser zu schließen und die WebDriver-Sitzung zu beenden.

driver.quit()

Webseiten öffnen und schließen

Verwenden Sie dieget()-Methode, um die angegebene URL zu öffnen.

driver.get("https://www.example.com")

Aktuellen Tab schließen

Verwenden Sie die close()-Methode, um den aktuellen Tab zu schließen.

driver.close()

Wenn nur ein Tab vorhanden ist, wird close() den Browser schließen.


Browserfenster-Operationen

Fenster maximieren

Verwenden Sie die Methode maximize_window(), um das Browserfenster zu maximieren.

driver.maximize_window()

Fenster minimieren

Verwenden Sie die Methode minimize_window(), um das Browserfenster zu minimieren.

driver.minimize_window()

Fenstergröße festlegen

Verwenden Sie die Methode set_window_size(width, height), um die Größe des Browserfensters festzulegen.

driver.set_window_size(1024, 768)  # 设置窗口大小为 1024x768 像素

Vollbildmodus

Verwenden Sie die Methode fullscreen_window(), um das Browserfenster in den Vollbildmodus zu versetzen.

driver.fullscreen_window()

Seitennavigation

Vorwärts und zurück

Verwenden Sie die Methode back(), um zur vorherigen Seite zurückzukehren.

Verwenden Sie die Methode forward(), um zur nächsten Seite zu gelangen.

driver.get("https://www.baidu.com")
driver.get("https://www.example.com")

driver.back()    # 返回 baidu.com
driver.forward() # 前进到 example.com

Seite aktualisieren

Verwenden Sie die Methode refresh(), um die aktuelle Seite zu aktualisieren.

driver.refresh()

Seitentitel und URL abrufen

Seitentitel abrufen

Verwenden Sie die Eigenschaft title, um den Titel der aktuellen Seite abzurufen.

title = driver.title
print("页面标题:", title)

Aktuelle URL abrufen

Verwenden Sie die Eigenschaft current_url, um die URL der aktuellen Seite abzurufen.

url = driver.current_url
print("当前 URL:", url)

Umfassendes Beispiel


Das Folgende ist ein vollständiges Beispiel, das zeigt, wie man einen Browser startet, eine Webseite öffnet, Fenster manipuliert, zwischen Seiten navigiert und Seiteninformationen abruft:

Beispiel

# Erforderliche Module importieren
from selenium import webdriver
from selenium.webdriver.chrome.service import Service as ChromeService

# Korrekten Treiberpfad festlegen
service = ChromeService(executable_path="./chromedriver-mac-arm64/chromedriver")
# Browseroptionen konfigurieren
options = webdriver.ChromeOptions()
driver = webdriver.Chrome(service=service, options=options)

# Webseite öffnen
driver.get("https://www.example.com")

# Fenster maximieren
driver.maximize_window()

# Seitentitel und URL abrufen
print("Page title:", driver.title)
print("Aktuelle URL:", driver.current_url)

# Zu einer anderen Seite navigieren
driver.get("https://www.jyshare.com")

# Zur vorherigen Seite zurückgehen
driver.back()

# Seite aktualisieren
driver.refresh()

# Browser schließen
driver.quit()

Nachdem der obige Code ausgeführt wurde, werden die folgenden Schritte ausgeführt:

  • Starten Sie den Chrome-Browser.

  • Öffnen Sie die angegebene Webseite (https://www.example.com)。

  • Das Browserfenster maximieren.

  • Rufen Sie den Seitentitel und die URL ab und geben Sie diese aus.

  • Navigieren Sie zu einer anderen Webseite (https://www.jyshare.com)。

  • Gehen Sie zur vorherigen Seite zurück.

  • Aktuelle Seite aktualisieren.

  • Schließen Sie den Browser.

Die Ausgabe ist:

页面标题: Example - 学的不仅是技术,更是梦想!
当前 URL: https://www.example.com/
Weitere Erweiterungen