You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Selenium在<ul>的<li>列表中调用find_element获取文本异常求助

问题解决:循环获取元素文本重复的问题

问题出在你使用的XPath路径上:

  • 当你通过x.find_element调用时,用的//div/div/article/div/div/div/span是绝对路径,会从整个HTML文档的根节点开始查找,所以每次都会返回页面中第一个匹配的span元素文本,导致所有结果重复。

解决方法很简单,把XPath改成相对路径,在开头加上.,表示从当前<li>元素的上下文开始搜索:

list_of_text_i_need = [x.find_element(by='xpath', value='.//div/div/article/div/div/div/span').text for x in list_of_li]

.代表当前节点,.//会从当前节点的子节点中递归查找匹配的元素,这样就能正确获取每个<li>下对应的目标span文本了。

内容的提问来源于stack exchange,提问作者lex

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.27 20:47:03