Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimanakah Saya Boleh Mengesan Dengan Cekap Apabila Halaman Web (dengan Tatal Infinite) Telah Dimuat Sepenuhnya Menggunakan Selenium WebDriver dalam Python?

Bagaimanakah Saya Boleh Mengesan Dengan Cekap Apabila Halaman Web (dengan Tatal Infinite) Telah Dimuat Sepenuhnya Menggunakan Selenium WebDriver dalam Python?

DDD
Lepaskan: 2024-12-16 20:28:15
asal
134 orang telah melayarinya

How Can I Efficiently Detect When a Web Page (with Infinite Scrolling) Has Fully Loaded Using Selenium WebDriver in Python?

Cara Menunggu Halaman Dimuat Menggunakan Selenium WebDriver untuk Python

Apabila mengikis data daripada halaman web yang dilaksanakan dengan menatal tanpa had, adalah penting untuk mengesan dengan cekap apabila halaman telah memuatkan kandungan baharu sepenuhnya. Artikel ini meneroka pendekatan yang lebih cekap masa berbanding menunggu selang masa tetap selepas setiap tatal.

Mekanisme Pemuatan Halaman Lalai

Secara lalai, Selenium WebDriver's .get () kaedah menunggu halaman dimuatkan sepenuhnya. Walau bagaimanapun, ini tidak mengambil kira untuk memuatkan dalam bingkai atau melalui permintaan AJAX.

Menggunakan WebDriverWait for Specific Elements

Untuk menunggu elemen tertentu tersedia pada halaman, gunakan WebDriverWait() dengan expected_conditions. Contohnya:

from selenium import webdriver
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.by import By

delay = 3 # seconds
driver = webdriver.Firefox()
driver.get("url")
try:
    myElem = WebDriverWait(driver, delay).until(EC.presence_of_element_located((By.ID, 'id-of-element')))
    print("Page is ready!")
except TimeoutException:
    print("Loading took too much time!")
Salin selepas log masuk

Pertimbangan

Perhatikan bahawa WebDriverWait hanya menunggu elemen atau syarat yang ditentukan menjadi benar. Jika menunggu elemen atau syarat tambahan, anda mungkin perlu menggunakan kod tersuai untuk mengesan penyiapan pemuatan halaman.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengesan Dengan Cekap Apabila Halaman Web (dengan Tatal Infinite) Telah Dimuat Sepenuhnya Menggunakan Selenium WebDriver dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan