selenium - 无法选择元素

标签 selenium selenium-webdriver katalon-studio katalon-recorder

我正在尝试使用 Selenium 选择一个元素,但无法选择它。我尝试使用 xpath、css 选择它,然后执行 javascript 来单击它,但没有成功。有什么想法吗?

我能够使用 katalon ide 自动化插件并在 javascript 控制台中选择它,这让我相信有一种方法可以做到这一点。

代码如下:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

driver = webdriver.Firefox()
driver.get(url="https://www.google.com/recaptcha/api2/demo")
driver.switch_to.frame(0)
driver.find_element(By.CSS_SELECTOR, "div.recaptcha-checkbox-checkmark").click()
driver.switch_to.default_content()
driver.switch_to.frame(1)
WebDriverWait(driver, 30).until(EC.presence_of_element_located((By.CSS_SELECTOR, "a.rc-audiochallenge-tdownload-link")))
driver.find_element(By.CSS_SELECTOR, "a.rc-audiochallenge-tdownload-link").click()

我尝试在此处选择音频按钮:enter image description here

任何帮助将不胜感激。

最佳答案

没有带有a.rc-audiochallenge-tdownload-link的元素定位器,音频按钮上有id recaptcha-audio-button...尝试ID 选择器...例如

WebDriverWait(driver, 30).until(EC.presence_of_element_located(By.ID, "recaptcha-audio-button"))
driver.find_element(By.CSS_SELECTOR, "recaptcha-audio-button").click()

关于selenium - 无法选择元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48592479/

相关文章:

python - 如何在不被拒绝许可的情况下通过 headless 驱动程序访问站点

python - 操作系统错误 : [Errno 8] Exec format error with GeckoDriver and Selenium on MacOS

javascript - 如何使用 Javascript 在 Selenium IDE 中导出到 webdriver 代码

java - 确认文本框已禁用

python - 如何使用 Selenium 从网站下载 csv 数据

windows - 在 Windows 上运行 katalon docker

python - Selenium 问题 - find_elements_by_xpath 或 find_elements_by_tag

python - Selenium 加载,但不打印所有 HTML

selenium - 使用 katalon 执行自动测试时,jenkins 意外中止作业

python - Katalon Export - 机器人框架问题