首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Selenium-rc Python客户端:不能遍历xpath?

Selenium-rc Python客户端:不能遍历xpath?
EN

Stack Overflow用户
提问于 2011-05-03 15:36:10
回答 1查看 393关注 0票数 1

我是Selenium的新手,正在使用Python客户端库实现selenium-rc。我尝试使用命令"sel.get_xpath_count(xpath)“使用xpath元素遍历页面的div。

它给出的计数是20,但是当我使用for语句和命令遍历每个div时,"sel.get_text(xpath='%s%d'%(xpath,i))",但是它只找到第一个元素,并在剩下的19个元素上给出一个错误,说没有找到div。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-05-03 23:18:42

第二个XPath表达式是错误的。接受过C风格语言培训的程序员经常犯这种错误,因为他们看到的是[...]并认为“索引到一个数组中”,但这不是XPath中的括号所做的事情。

如果使用sel.get_xpath_count(something),则需要使用sel.get_text("xpath=(something)[item_number]")。请注意,在第二次使用时,在原始XPath表达式两边使用了括号。

这背后的原因是something[item_count]something AND position() = item_count的缩写-因此,您最终向"something“表达式添加了另一个谓词,而不是选择该表达式选择的一个节点。(something)[item_count]之所以有效,是因为(something)的值是一个节点列表,并且添加position() = item_count将从列表中选择具有指定位置的节点。这是,更像是一个C风格的数组。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5866496

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档