Menunggu Elemen Terisi Penuh dengan Selenium
Dalam Python menggunakan Selenium, kelas WebDriverWait menyediakan keupayaan untuk menunggu keadaan tertentu berlaku sebelum meneruskan. Satu kes penggunaan biasa ialah menunggu sehingga elemen dimuatkan sepenuhnya dan boleh diklik.
Masalah:
Anda cuba mengautomasikan proses yang mengisi borang dengan Selenium . Apabila anda mengklik butang "Skapa Konto", ia memuatkan halaman baharu sebelum kod anda menjangkakannya, menyebabkan ia melangkau syarat menunggu dan meneruskan pelaksanaan lebih awal.
Penyelesaian:
Cadangan utama di sini adalah untuk memformat kod WebDriverWait dengan betul. Kod tersebut sepatutnya kelihatan seperti ini:
WebDriverWait(browser, 20).until(EC.element_to_be_clickable((By.XPATH, '//*[@id="accountStandalone"]/div/div/div[2]/div/div/div[1]/button'))).click()
Dengan mengasingkan arahan WebDriverWait dan .click() dengan titik, anda memastikan bahawa syarat menunggu dipenuhi sebelum melaksanakan tindakan klik.
Pilihan Tambahan:
Jika pendekatan WebDriverWait tidak menyelesaikan masalah isu, anda boleh mempertimbangkan kaedah alternatif untuk mengesan status pemuatan halaman:
Teknik ini boleh membantu anda mengendalikan senario pemuatan halaman dinamik di mana pendekatan WebDriverWait mungkin tidak mencukupi.
Atas ialah kandungan terperinci Bagaimanakah WebDriverWait Selenium Boleh Memastikan Butang Boleh Diklik Sebelum Meneruskan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!