python - 如何检查 Selenium Python 中是否选中/取消选中复选框?
问题描述
我正在尝试通过返回布尔值的方法检查复选框的状态,但在两种情况下(选中和未选中)都返回 false。
def checkbox_status(self):
checked=self.driver.find_element_by_xpath('//span[contains(text(), "Dell")]/parent::span').is_selected()
return checked
HTML
<div class="a-checkbox a-checkbox-fancy s-navigation-checkbox">
<label>
<input type="checkbox" name="" value="" checked="">
<i class="a-icon a-icon-checkbox"></i>
<span class="a-label a-checkbox-label">
<span class="a-size-base a-color-base a-text-bold">Dell</span>
</span>
</label>
</div>
解决方案
我们可以尝试使用 get 属性。这对我来说很好:
def status():
element =driver.find_element_by_xpath('//span[contains(text(), "Dell")]/ancestor::label/input')
if element.get_attribute('checked') :
return True
else:
return False
推荐阅读
- reactjs - React 路由器链接绝对路径
- javascript - 如何使用阿拉伯语(客户端)从 HTML 生成 PDF?
- go - Go 1.13 之后的私有 Go 项目和 GOPATH
- python - matplotlib 中的堆积条形图——如何编写大量类别的代码?
- angular - Angular9:目标入口点“@angular/fire/auth”中的错误缺少依赖项
- excel - VBA 全局变量作为变量传递
- reactjs - 如何使用 Jest 在 useEffect 挂钩中测试更新窗口历史记录
- python - Python setuptools的依赖项自动发现?
- c# - ReactiveUI 连接 Observable CanExecute 和 IsExecuting 属性
- javascript - 尝试返回二叉树的级别顺序遍历