Selenium无法在使用Python时单击“获取数据”按钮
我正在从这个网站上抓取数据。元素在下面,geckodriverSelenium无法在使用Python时单击“获取数据”按钮,python,selenium,xpath,css-selectors,webdriverwait,Python,Selenium,Xpath,Css Selectors,Webdriverwait,我正在从这个网站上抓取数据。元素在下面,geckodriver <img class="getdata-button" style="float:right;" src="/common/images/btn-get-data.gif" id="get" onclick="document.getElementById('submitMe').click()"> 但无法让sele
<img class="getdata-button" style="float:right;" src="/common/images/btn-get-data.gif" id="get" onclick="document.getElementById('submitMe').click()">
但无法让selenium单击它,即使尝试了xpath,id,但运气不佳
是否有任何修复或解决方法来完成此任务?您可能应该通过id进行尝试
driver.find_element(By.ID, 'get').click()
要单击“获取数据”元素,可以使用以下任一选项:
- 使用
:css\u选择器
driver.find_element_by_css_selector("img.getdata-button#get").click()
- 使用
:xpath
driver.find_element_by_xpath("//img[@class='getdata-button' and @id='get']").click()
理想情况下,要单击需要引导的元素,使
元素可单击()
,您可以使用以下任一选项:
- 使用
:CSS\u选择器
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.CSS_SELECTOR, "img.getdata-button#get"))).click()
- 使用
:XPATH
WebDriverWait(driver, 20).until(EC.element_to_be_clickable((By.XPATH, "//img[@class='getdata-button' and @id='get']"))).click()
- 注意:您必须添加以下导入:
from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.common.by import By from selenium.webdriver.support import expected_conditions as EC