【发布时间】:2021-11-30 17:13:18
【问题描述】:
这不是绝对必要的,但它会使代码更短并且可能更快。我想使用 Selenium 对通常属于同一类的 Web 元素元素执行相同的操作,但如果单击其中一个元素,则其类会动态更改以指定它是“活动”元素。我基本上只能通过类名(XPATH)来定位这些元素。有没有办法将属于不同类的元素存储到同一个变量中,然后对该变量执行操作?
【问题讨论】:
标签: python selenium selenium-chromedriver
这不是绝对必要的,但它会使代码更短并且可能更快。我想使用 Selenium 对通常属于同一类的 Web 元素元素执行相同的操作,但如果单击其中一个元素,则其类会动态更改以指定它是“活动”元素。我基本上只能通过类名(XPATH)来定位这些元素。有没有办法将属于不同类的元素存储到同一个变量中,然后对该变量执行操作?
【问题讨论】:
标签: python selenium selenium-chromedriver
如果使用 XPath 是唯一的选择,您可以利用在元素的选择器中使用逻辑运算符。
例如以下 XPath:
//div[starts-with(@class, 'myclass')]|//div[starts-with(@class, 'myclass active')]
上面的 XPath 表示“查找所有类以 'myclass' 开头的 div 标记或所有以 'myclass active' 开头的 div 标记。
其他 XPath 表达式(如 contains)可用于匹配元素/元素集合的任何属性中的文本。选择选择器时要小心,以确保只选择您想要选择的元素。
【讨论】: