Memilih Elemen HTML dalam iframe Bersarang dalam Selenium
Berinteraksi dengan elemen dalam iframe bersarang dalam Selenium memerlukan penukaran kepada iframe yang sesuai sebelum memilih sasaran unsur. Fokus Selenium lalai kekal pada tetingkap atas, dan tanpa bertukar secara eksplisit kepada iframe yang diingini, ia tidak mungkin untuk berinteraksi dengan elemen di dalamnya.
Kaedah Penukaran Bingkai
Untuk bertukar kepada iframe tertentu, Selenium menyediakan tiga pilihan:
Contoh:
# Switch to an iframe by its name driver.switch_to.frame("iframe_name") # Select an element within the iframe element = driver.find_element_by_css_selector(".element_selector") # Switch back to the main frame driver.switch_to.default_content()
Pendekatan Lebih Baik:
Untuk pengendalian peralihan iframe yang lebih baik, pertimbangkan untuk menggunakan kelas WebDriverWait Selenium dengan frame_to_be_available_and_switch_to_it() jangkaan keadaan. Syarat ini menunggu iframe sasaran tersedia dan beralih kepadanya secara automatik.
Contoh:
# Wait for the iframe with the specified ID to become available and switch to it WebDriverWait(driver, 10).until(EC.frame_to_be_available_and_switch_to_it((By.ID, "iframe_id"))) # Select an element within the iframe element = driver.find_element_by_css_selector(".element_selector") # Switch back to the main frame driver.switch_to.default_content()
Pertimbangan Tambahan
Rujukan:
Untuk butiran lanjut dan perbincangan tentang pengendalian iframe dalam Selenium, rujuk:
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Memilih Elemen HTML Di Dalam iframe Bersarang Menggunakan Selenium?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!