<label for="CREDIT" class="_8J-bZE _3C6tOa _2i24Q8">
        <input type="radio" class="_2haq-9" name="paymentOptions" readonly="" id="CREDIT" value="on">
        <div class="_6ATDKp"></div>
         <div class="_2o59RR">
        </div>
        </label>

        <label for="NET_OPTIONS" class="_8J-bZE _3C6tOa _2i24Q8">
        <input type="radio" class="_2haq-9" name="paymentOptions" readonly="" id="NET_OPTIONS" value="on">
        <div class="_6ATDKp"></div>
        <div class="_2o59RR"></div>
        </label>

Ada dua tombol radio dengan nama kelas yang sama dan saya ingin mengklik yang kedua ( OPSI BERSIH). Saya baru mengenal python dan Selenium, bantuan apa pun akan dihargai. Saya telah mencoba Xpath dan menemukan ID keduanya tetapi masih TIDAK berhasil

driver.find_element_by_id("NET_OPTIONS").click()
driver.find_element_by_xpath("//*[@id='container']/div/div[1]/div/div/div[1]/div[4]/div/div/div/div[3]/div/label[3]").click()

Setelah mencoba kode di atas, saya mendapatkan kesalahan ini, Namun tombol radio sangat terlihat di halaman tetapi, webriver tidak dapat menemukannya :( .selenium.common.exceptions.ElementNotVisibleException‌​: Pesan: elemen tidak terlihat

0
gaurav tyagi 27 Agustus 2017, 06:45

2 jawaban

Jawaban Terbaik

Coba kode ini dan mari kita lihat apakah itu berhasil-

 element = driver.find_element_by_id("NET_OPTIONS")
 driver.execute_script("arguments[0].click();", element)
1
Kapil 27 Agustus 2017, 15:22

Ini cukup mudah. Dengan asumsi driver adalah webdriver Selenium Anda, Anda dapat mengklik tombol yang Anda inginkan hanya dengan menemukannya melalui id:

button = driver.find_element_by_id("NET_OPTIONS")
button.click()
0
Sam Chats 27 Agustus 2017, 03:51