Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimana untuk Tatal Halaman Web dengan Selenium WebDriver dalam Python?

Bagaimana untuk Tatal Halaman Web dengan Selenium WebDriver dalam Python?

Susan Sarandon
Susan Sarandonasal
2024-12-13 16:00:24772semak imbas

How to Scroll Web Pages with Selenium WebDriver in Python?

Menatal Halaman Web dengan Selenium WebDriver dalam Python

Dalam Selenium WebDriver, keupayaan untuk menatal ke bawah halaman web menjadi penting apabila menavigasi dinamik kandungan atau mengekstrak data daripada senarai yang luas. Untuk mencapai fungsi tatal dalam Python ini, beberapa pendekatan boleh digunakan.

Kaedah 1: Tatal Eksplisit

Untuk menatal ke kedudukan tertentu pada halaman, gunakan execute_script () kaedah:

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

di mana Y mewakili ketinggian untuk menatal kepada.

Kaedah 2: Menatal ke Bawah

Untuk menatal ke bahagian bawah halaman, laksanakan skrip berikut:

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

Kaedah 3: Menatal Halaman Pemuatan Tak Terhingga

Untuk halaman dengan pemuatan tanpa had, seperti suapan media sosial, gunakan gelung ini sehingga tiada penatalan selanjutnya boleh dilakukan:

SCROLL_PAUSE_TIME = 0.5

last_height = driver.execute_script("return document.body.scrollHeight")

while True:
    driver.execute_script("window.scrollTo(0, document.body.scrollHeight);")
    time.sleep(SCROLL_PAUSE_TIME)
    new_height = driver.execute_script("return document.body.scrollHeight")
    if new_height == last_height:
        break
    last_height = new_height

Kaedah 4: Menggunakan Kekunci Papan Kekunci

Sebagai alternatif, untuk menatal ke bawah satu halaman, simulasikan kekunci Page Down:

label.send_keys(Keys.PAGE_DOWN)

Atas ialah kandungan terperinci Bagaimana untuk Tatal Halaman Web dengan Selenium WebDriver dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn