微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

python-索引硒返回的结果

我尝试索引由xpath返回的结果.例如:

xpath = '//a[@id="someID"]'

可以返回一些结果.我想得到他们的清单.我认为这样做:

numOfResults = sel.get_xpath_count(xpath)
l = []
for i in range(1,numOfResults+1):
   l.append(sel.get_text('(%s)[%d]'%(xpath, i)))

之所以可行,是因为使用firefox的Xpath检查器执行类似的操作:

(//a[@id='someID'])[2]

返回第二个结果.

为什么行为会有所不同以及如何用硒来做这种事的想法
谢谢

解决方法:

您可以尝试使用xpath / html / descendant :: a [@ id =“ someID”]吗?您可以将/ html替换为其他链接祖先,例如id(‘content’).然后,您应该能够使用[1],[2]等定位各个链接.

从位于http://www.w3.org/TR/xpath#path-abbrev的XPath TR:

NOTE: The location path //para[1] does not mean the same as the location path /descendant::para[1]. The latter selects the first descendant para element; the former selects all descendant para elements that are the first para children of their parents.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐