如何使用python在硒中按ID名称的一部分查找元素

问题描述 投票:1回答:1

我正在使用selenium和python,现在我想通过其ID名称的一部分来定位元素,我该怎么办?

例如,现在我已经通过ID名称coption5找到了一个项目:

sixth_item = driver.find_element_by_id("coption5")

无论如何,我只能使用coption找到该元素吗?

python selenium selenium-webdriver xpath css-selectors
1个回答
4
投票

要查找您所位于的元素:

sixth_item = driver.find_element_by_id("coption5")

仅通过使用coption来定位此元素,可以使用以下Locator Strategies中的任何一个:

  • 使用XPATHstarts-with()

    sixth_item = driver.find_element_by_xpath("//*[starts-with(@id, 'coption')]")
    
  • 使用XPATHcontains()

    sixth_item = driver.find_element_by_xpath("//*[contains(@id, 'coption')]")
    
  • 使用CSS_SELECTOR^(开头为通配符):

    sixth_item = driver.find_element_by_css_selector("[id^='coption']")
    
  • 使用CSS_SELECTOR*(包含通配符:

    sixth_item = driver.find_element_by_css_selector("[id*='coption']")
    

参考

您可以在以下位置找到有关动态CssSelectors的详细讨论:

© www.soinside.com 2019 - 2024. All rights reserved.