【问题标题】:When I print the id it doesn't match the id in "inspect element"当我打印 id 时,它与“inspect element”中的 id 不匹配
【发布时间】:2020-03-24 07:55:15
【问题描述】:

我有一个包含以下内容的网页:

<span class="plugin_pagetree_children_span plugin_pagetree_current" id="childrenspan173273808-0"> <a href="/display/Cardians/Shift+Turnover?src=contextnavpagetreemode">Shift Turnover</a> </span>

我可以通过使用st = driver.find_element_by_link_text('Shift Turnover')的链接文本成功找到它

但是当我使用 print('-',st.id) 打印 id 时

id 打印为63cd644e-495b-4985-8f9e-7ea067a2b6f1 而不是childrenspan173273808-0。

我也尝试过get_attribute 和get_property,但它们也不起作用。欢迎任何提示/提示/建议。

提前致谢。

【问题讨论】:

    标签: python selenium element


    【解决方案1】:

    我在这里看到的问题是您正在尝试获取 ID childrenspan173273808-0,但您的选择器 driver.find_element_by_link_text('Shift Turnover') 正在定位没有 ID 的 a 元素。这就是为什么get_attribute 不适合你。你实际上想要找到包含你想要的ID的span元素。

    您可以使用它来获取 ID childrenspan173273808-0:

    st = driver.find_element_by_xpath("//span[a[text()='Shift Turnover']]") # locate the span
    id = st.get_attribute("id") # get its ID and print
    print(id)
    

    此 XPath 使用文本 Shift Turnover 定位出现在 a 元素之外的 span 元素。我们查询包含a 元素和Shift Turnover 文本的span,然后在span 元素上调用get_attribute,以检索您想要的childrenspan173273808-0 ID。

    最后 -- 在您的示例中打印出的 ID 63cd644e-495b-4985-8f9e-7ea067a2b6f1 不是 WebElement ID 属性,而是“the server-assigned opaque ID for the underlying DOM element”。这在 WebElement 上的 Selenium 文档中有详细说明。

    【讨论】:

      【解决方案2】:

      您正在尝试检索网络元素的值。您需要使用在 Web 元素界面中声明的 get_attribute 方法。基本上这个方法会以字符串格式返回指定属性的值。

      解决方案 1:

      locator= driver.find_element_by_xpath("//span[@id='childrenspan173273808']//a").get_attribute("id")
      print(locator)
      

      解决方案 2:

      locator=driver.find_element_by_xpath("//span[@class='plugin_pagetree_children_span plugin_pagetree_current']//a[1]").get_attribute("id")
      print(locator)
      

      【讨论】:

        猜你喜欢
        • 2021-09-03
        • 2011-02-18
        • 2021-03-03
        • 1970-01-01
        • 2016-10-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多