Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich mit Selenium Webdriver in Python durch eine Webseite scrollen?

Wie kann ich mit Selenium Webdriver in Python durch eine Webseite scrollen?

Barbara Streisand
Freigeben: 2024-12-09 11:20:12
Original
368 Leute haben es durchsucht

How Can I Scroll a Web Page Using Selenium Webdriver in Python?

Scrollen einer Webseite mit Selenium Webdriver in Python

Im Bereich der Webautomatisierung gilt Selenium Webdriver als vertrauenswürdiges Tool für die Navigation und Interaktion mit Webseiten. Eine häufige Herausforderung bei der Automatisierung von Aufgaben besteht darin, auf einer Webseite nach unten zu scrollen, um auf zusätzliche Inhalte zuzugreifen. Dieser Artikel befasst sich mit den verschiedenen Ansätzen zum Herunterscrollen mit Selenium Webdriver in Python.

Ansatz 1: Angeben einer bestimmten Höhe

Um zu einer bestimmten Höhe auf der Seite zu scrollen, verwenden Sie die folgende Syntax:

driver.execute_script("window.scrollTo(0, Y)")
Nach dem Login kopieren

wobei Y die gewünschte Höhe in Pixel darstellt. Um beispielsweise auf eine Höhe von 1080 Pixel (die Höhe eines Full-HD-Monitors) nach unten zu scrollen, würden Sie Folgendes verwenden:

driver.execute_script("window.scrollTo(0, 1080)")
Nach dem Login kopieren

Ansatz 2: Zum Ende der Seite scrollen

Um Scrollen Sie ganz nach unten auf der Seite und führen Sie den folgenden Code aus:

driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
Nach dem Login kopieren

Dieser Befehl stellt sicher, dass Sie das Ende der Seite erreichen, unabhängig vom tatsächlichen Ende Höhe.

Ansatz 3: Unendliches Scrollen

Für Webseiten, die unendliches Scrollen verwenden (z. B. Social-Media-Feeds), müssen Sie einen benutzerdefinierten Scroll-Mechanismus implementieren:

SCROLL_PAUSE_TIME = 0.5

# Get the initial scroll height
last_height = driver.execute_script("return document.body.scrollHeight")

while True:
    # Scroll down to the bottom
    driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")

    # Allow time for the page to load
    time.sleep(SCROLL_PAUSE_TIME)

    # Calculate the new scroll height and compare it with the previous one
    new_height = driver.execute_script("return document.body.scrollHeight")
    if new_height == last_height:
        break
    last_height = new_height
Nach dem Login kopieren

Zusätzliche Methode: Element auswählen und scrollen

Wenn Sie möchten, können Sie ein Element auf der Seite auswählen und dorthin scrollen direkt:

label = driver.find_element_by_css_selector("body")
label.send_keys(Keys.PAGE_DOWN)
Nach dem Login kopieren

Durch Auswahl eines Elements und Senden des Befehls Keys.PAGE_DOWN wird die Seite um eine Seite nach unten gescrollt.

Das obige ist der detaillierte Inhalt vonWie kann ich mit Selenium Webdriver in Python durch eine Webseite scrollen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage