Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich mit Selenium WebDriver in Python durch Webseiten scrollen?

Wie kann ich mit Selenium WebDriver in Python durch Webseiten scrollen?

Barbara Streisand
Barbara StreisandOriginal
2024-12-07 18:33:15205Durchsuche

How Can I Scroll Web Pages Using Selenium WebDriver in Python?

Scrollen von Webseiten mit Selenium Webdriver in Python

Beim Zugriff auf Webseiten mit dynamisch geladenen Inhalten, wie z. B. Facebook-Freundeslisten, wird häufig gescrollt notwendig, um alle verfügbaren Daten abzurufen. Selenium Webdriver bietet eine Reihe von Methoden, um das Scrollen in Python zu ermöglichen.

Lösung 1: Explizites Scrollen über definierte Distanz

Um zu einer bestimmten vertikalen Position zu scrollen, verwenden Sie die folgende Syntax :

driver.execute_script("window.scrollTo(0, Y)")

Ersetzen Sie Y durch die gewünschte Scrollhöhe, normalerweise 1080 für Full HD Monitor.

Lösung 2: Zum Seitenende scrollen

So scrollen Sie zum Ende der Seite:

driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")

Lösung 3 : Scrollen von Seiten mit unendlichem Laden

Für Social-Media-Plattformen wie Facebook mit unendlichem Laden Scrollen:

SCROLL_PAUSE_TIME = 0.5

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

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

    # Pause to allow loading
    time.sleep(SCROLL_PAUSE_TIME)

    # Check if scroll height has changed
    new_height = driver.execute_script("return document.body.scrollHeight")
    if new_height == last_height:
        break
    last_height = new_height

Lösung 4: Tastaturkürzel verwenden

Identifizieren Sie ein Element und wenden Sie Folgendes an:

label.sendKeys(Keys.PAGE_DOWN)

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

Stellungnahme:
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