Python selenium3 如何 .text 非text()的xpath and组合定位

1、环境说明:Python3.17 selenium3.140.0
2、依次需要定位a,b,c,d,e,f,g的元素
<div data-v-7701f4ce="" data-v-35fa6120="" class="menu menu">
<div data-v-7701f4ce="" class="menu-item is-active">g</div>
<div data-v-7701f4ce="" class="menu-item">a</div>
<div data-v-7701f4ce="" class="menu-item">b</div>
<div data-v-7701f4ce="" class="menu-item">c</div>
<div data-v-7701f4ce="" class="menu-item">d</div>
<div data-v-7701f4ce="" class="menu-item">e</div>
<div data-v-7701f4ce="" class="menu-item">f</div>
</div>
3、采用xpath进行定位
browser.find_element_by_xpath("//div[contains(@class,'menu-item') and text='a'").click()
一直通过不了,报错。
提示 no such element
网上找的大部分都是采用text()方式,试过了。text()也是错的。
同时,使用其他元素验证过,XXX.test,可正确输出 文本值。 XXX.text()不可行,会报错。
疑问:需要 and text文本,这个该这么改呢。(这样定位会比较快,使用父节点来定位子节点[]的方式也是可以,但太多控件都是这个模式,都这样定位太复杂了)
还请高手们指导下,谢谢!
4、查找AIP 知道获取元素的文本值的方式 element.text 有效。text()不可用。

阅读 2k
1 个回答
新手上路,请多包涵

刚接触python,还请大家帮忙看看,谢谢!

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题