【问题标题】:How to check if an html element has an attribute selenium python [duplicate]如何检查html元素是否具有属性selenium python [重复]
【发布时间】:2022-01-04 21:56:45
【问题描述】:

我在带有 selenium 的 python 中使用 get_attribute() 函数从特定 html 元素的子元素中获取特定属性,但是,一些子元素没有该属性,有没有办法检查 html元素有特定的属性吗?

【问题讨论】:

    标签: python selenium


    【解决方案1】:

    您应该遍历该特定 html 元素的直接子元素,并分别检查每个元素的所需属性。

    获取所有直接子级的一种方法是使用 CSS 选择器:

    find_elements_by_css_selector("your_element > *")
    

    上面给出了孩子的列表,然后遍历它并使用get_attribute()检查每个元素是否具有您想要的属性。

    如果您已经拥有该元素,也可以使用 XPATH:

    e.find_elements_by_XPATH('./*')
    

    注意: find_elements_by_* 命令现已弃用。例如最好使用find_elements(By.XPATH)

    【讨论】:

    • 嗨,谢谢您的回答,我只是对如何检查元素是否具有属性感到困惑,但非常感谢您的帮助:D
    • @RafaelLeo 编写一个 for 循环,for element in lst: lst 这里是您在答案中看到的上述逗号的返回列表。然后调用element.get_attribute('...) 并检查返回值。如果它没有该属性,则返回 None。
    • alr,请大家帮忙 :)
    猜你喜欢
    • 2020-07-09
    • 2010-11-22
    • 2019-04-30
    • 2016-10-25
    • 2016-08-05
    • 2013-12-26
    • 1970-01-01
    • 2022-06-25
    • 2017-12-19
    相关资源
    最近更新 更多