Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah saya Boleh Menjeda Selenium WebDriver dalam Python untuk Milidetik?

Bagaimanakah saya Boleh Menjeda Selenium WebDriver dalam Python untuk Milidetik?

Susan Sarandon
Susan Sarandonasal
2024-12-22 21:17:11786semak imbas

How Can I Pause Selenium WebDriver in Python for Milliseconds?

Menjeda Selenium WebDriver dalam Python untuk Millisaat

Menggunakan fungsi time.sleep perpustakaan masa, anda boleh menangguhkan pelaksanaan selama satu saat. Walau bagaimanapun, untuk menjeda selama 250 milisaat, terdapat dua pendekatan:

1. Menggunakan Detik Titik Terapung

Untuk menentukan milisaat, hantarkan nombor titik terapung sebagai hujah:

import time
time.sleep(0.25)  # Pauses for 250 milliseconds

2. Menggunakan WebDriverWait dan Syarat Jangkaan (Disyorkan)

Walaupun menggunakan tidur berasaskan masa boleh mengalahkan tujuan automasi, pendekatan yang disyorkan ialah menggunakan WebDriverWait bersama-sama dengan syarat yang dijangkakan untuk mengesahkan keadaan elemen berdasarkan kriteria tertentu.

Tiga keadaan jangkaan yang biasa digunakan ialah:

kehadiran_elemen_terletak

Menyemak sama ada unsur hadir pada DOM, tanpa mengira keterlihatan atau interaktiviti.

keterlihatan_elemen_terletak

Menyemak sama ada unsur hadir dan kelihatan (tinggi dan lebar lebih besar daripada 0).

element_to_be_clickable

Menyemak sama ada elemen boleh dilihat, didayakan dan boleh diklik.

Dengan menggunakan syarat ini, anda boleh mengelakkan kelewatan yang tidak perlu sambil memastikan elemen itu bersedia untuk interaksi. Contohnya:

import selenium.webdriver as webdriver
from selenium.webdriver.support.ui import WebDriverWait
from expected_conditions import visibility_of_element_located

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

element = WebDriverWait(driver, 10).until(
    visibility_of_element_located((By.CSS_SELECTOR, "#my-element"))
)

Ini menunggu sehingga 10 saat untuk elemen dengan ID "elemen saya" kelihatan sebelum meneruskan.

Rujukan

Untuk perbincangan lanjut, rujuk: WebDriverWait tidak berfungsi seperti yang diharapkan

Atas ialah kandungan terperinci Bagaimanakah saya Boleh Menjeda Selenium WebDriver dalam Python untuk Milidetik?. 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