【问题标题】:Checking If Attribute Exists In Any Of Html Tags Selenium Python检查任何 Html 标签中是否存在属性 Selenium Python
【发布时间】:2021-06-20 07:00:29
【问题描述】:

我想检查是否有任何 html 标签具有 <style> 属性,例如 <a style = ..><h1 style = ...><div style = ..> 等。 我使用了下面的代码,但它无法运行:

driver = webdriver.Chrome(web_driver_address, options=op)
driver.get(url)

elems = driver.find_elements_by_xpath("[@style]")

我该如何解决这个问题?

【问题讨论】:

    标签: python selenium webdriver


    【解决方案1】:

    您的 XPath 缺少元素标记名称。
    在您的情况下,它可以是任何标签名称,但它仍然应该作为语法的一部分存在,因此您应该在那里使用 * 就像 any 一样。
    此外,您缺少 //,这意味着该元素可以位于页面上的任何位置。
    所以正确的 XPath 表达式应该是这样的:

    elems = driver.find_elements_by_xpath("//*[@style]")
    

    不要忘记添加一些等待/延迟,让页面在获取所有元素之前加载它们

    【讨论】:

      【解决方案2】:

      xpath 需要标签有效。如果您不想要特定标签,请使用*

      find_elements_by_xpath("//*[@style]")
      

      或者css_selector

      find_elements_by_css_selector("[style]")
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-04-15
        • 2014-01-17
        • 2017-10-05
        • 2022-01-04
        • 2016-08-05
        • 2013-09-30
        • 2011-07-20
        • 2019-08-03
        相关资源
        最近更新 更多