我有以下xpath表达式
//div[@class="post-content"]//img
在html页面上运行,扫描图像。 上面的查询返回了很多图像,但我只想要列表中的第二个。
我试过了
//div[@class="post-content"]//img[1] and
//div[@class="post-content"]//img[position()=1]
没有运气
我该怎么做?
感谢
答案 0 :(得分:37)
在XPath索引中从1个位置开始,因此
//div[@class="post-content"]//img[2]
如果您必须在img
中选择每个第二div[@class="post-content"]
,应该可以正常工作。如果您必须从img
中的所有图片中仅选择第二个div[@class="post-content"]
,请使用:
(//div[@class="post-content"]//img)[2]
答案 1 :(得分:9)
索引是从1开始的,而不是从0开始的。试试
(//div[@class="post-content"]//img)[position()=2]