Rumah > pembangunan bahagian belakang > Tutorial Python > Mengapa Selenium Tidak Boleh Mengklik Butang 'Dapatkan Data' Saya, dan Bagaimana Saya Boleh Membetulkannya?

Mengapa Selenium Tidak Boleh Mengklik Butang 'Dapatkan Data' Saya, dan Bagaimana Saya Boleh Membetulkannya?

Mary-Kate Olsen
Lepaskan: 2024-12-09 05:53:09
asal
1032 orang telah melayarinya

Why Can't Selenium Click My

Selenium Tidak Dapat Mengklik Butang "Dapatkan Data" Menggunakan Python

Semasa cuba mengikis data dari tapak web, anda menghadapi kesukaran menggunakan Selenium untuk mengklik "Dapatkan Data" butang. Walaupun menggunakan XPath dan pencari ID, anda tetap tidak berjaya.

Untuk menyelesaikan isu ini, anda boleh memanfaatkan strategi pencari berikut untuk mengklik butang:

  • CSS Pemilih:

    driver.find_element_by_css_selector("img.getdata-button#get").click()
    Salin selepas log masuk
  • XPath:

    driver.find_element_by_xpath("//img[@class='getdata-button'][@id='get']").click()
    Salin selepas log masuk

Untuk meningkatkan kestabilan, adalah disyorkan untuk mendorong WebDriverTunggu keadaan element_to_be_clickable() menggunakan sama ada CSS Selector atau XPath pencari:

  • Menggunakan CSS Selector:

    from selenium.webdriver.support.ui import WebDriverWait
    from selenium.webdriver.common.by import By
    from selenium.webdriver.support import expected_conditions as EC
    
    WebDriverWait(driver, 20).until(EC.element_to_be_clickable(By.CSS_SELECTOR, "img.getdata-button#get")).click()
    Salin selepas log masuk
  • Menggunakan XPath:

    WebDriverWait(driver, 20).until(EC.element_to_be_clickable(By.XPATH, "//img[@class='getdata-button'][@id='get']")).click()
    Salin selepas log masuk

Ingat untuk memasukkan yang perlu import:

from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.common.by import By
from selenium.webdriver.support import expected_conditions as EC
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapa Selenium Tidak Boleh Mengklik Butang 'Dapatkan Data' Saya, dan Bagaimana Saya Boleh Membetulkannya?. 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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan