python - Selenium Webdriver 也在寻找隐藏的值(value)

标签 python selenium webdriver

这是我正在寻找的 html 源代码。

<input type="hidden" value="3" id="provCount" /><input id="SettingsFrmId:settings_addProv_button" type="submit" name="SettingsFrmId:settings_addProv_button" class="inputButton" value="Add Prov" title="Add Prov" title="Add Prov" />

在下面的代码中,我尝试检查是否找到隐藏元素。

try:
            driver.find_element_by_id("SettingsFrmId:settings_addProv_button")
            logger[0].error('Add Prov button found.')
            return 1
except NoSuchElementException:
            logger[0].info('Add prov button is not found')`

Selenium 服务器:2.20.0

这里我的执行失败,因为 selenium webdriver 找到了元素并且 try block 返回 1。我的理解是 webdriver 不会找到隐藏的元素。

最佳答案

这里有两个元素

1:一个“隐藏”的 id="provCount"的文本输入元素:

<input type="hidden" value="3" id="provCount" />

2:一个按钮元素,其 id="pSettingsFrmId:settings_addProv_buttonovCount"是“隐藏”的:

<input id="SettingsFrmId:settings_addProv_button" type="submit" name="SettingsFrmId:settings_addProv_button" class="inputButton" value="Add Prov" title="Add Prov" title="Add Prov" />
<小时/>

然后,您尝试查找 id = "SettingsFrmId:settings_addProv_button"的按钮元素(未隐藏!)

driver.find_element_by_id("SettingsFrmId:settings_addProv_button")
<小时/>

如果您实际上想检查隐藏的(实际上是文本输入),您应该将上面的行更改为:

driver.find_element_by_id("provCount")

关于python - Selenium Webdriver 也在寻找隐藏的值(value),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9799315/

相关文章:

javascript - Protractor 检查元素是否有子元素

selenium - WebDriver with Java - 单击图像打开链接

python - 如何从 models.py django 调用自定义函数

python - SVD with numpy - 结果解释

python - Selenium Chromedriver 添加 cookie - 无效域错误

c# - 为什么 Selenium 会超时?

python - Elasticsearch 中单个聚合的多个过滤器

python - 我如何查看 ponyorm 生成的 SQL?

python - 如何使用 Selenium webdriver 和 Python 一一点击链接

java - 如何右键单击元素并在 selenium 的 chrome 浏览器中选择一个选项