我正在使用selenium和python,现在我想通过其ID名称的一部分来定位元素,我该怎么办?
例如,现在我已经通过ID名称coption5找到了一个项目:
sixth_item = driver.find_element_by_id("coption5")
无论如何,我只能使用coption找到该元素吗?
要查找您所位于的元素:
sixth_item = driver.find_element_by_id("coption5")
仅通过使用coption来定位此元素,可以使用以下Locator Strategies中的任何一个:
使用XPATH
和starts-with()
:
sixth_item = driver.find_element_by_xpath("//*[starts-with(@id, 'coption')]")
使用XPATH
和contains()
:
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的详细讨论: