如何选择XPath的第n个元素(How to select the first n elements

2019-10-21 02:40发布

我使用YQL刮从网站的一些图片。

问题是,我想只能从该网站的第一个5张图片。

我有以下查询:

select * from html where url="http://myanimelist.net/anime/9253/Steins;Gate" and xpath='//img[position()<=5]'

但是,它返回所有的图像元素,而不是第5。

YQL控制台: 上面的XPath开放YQL控制台

这有什么错我的XPath查询?

PS:我不能使用LIMIT 5 ,因为我可能需要一些刮其它标签了。

Answer 1:

此XPath表达式将选择前5 img元素:

//img[count(preceding::img) < 5]

这里是整个YQL查询:

select * from html where url="http://myanimelist.net/anime/9253/Steins;Gate" and xpath='//img[count(preceding::img) < 5]'

你可以看它的工作YQL控制台 。



文章来源: How to select the first n elements in XPath