Xpath获取指定元素相邻的不被标签括起来的文本
如图:
已知图片中标注1、2、3对应的内容
在业务中我需要获取标志2对应的"58"这个值,但是这个值不包括在某个标签中,在span“集数”和br标签之间,为了减小获取"58"这个值不被之前的标签数量的影响
先获取标签1所对应的元素,因为标签1有property="v:initialReleaseDate"这个属性和属性值,所以很容易用xpath获取,且具有唯一性:
//span[@property="v:initialReleaseDate"]
获取标签1元素对象之后,我们可以根据标签1为基准,算一下"58"这个值是相邻的第几个元素,如图可知除去span标签不看,是相邻2个元素(包括br在内)
*[@id="info"]/span[@property="v:initialReleaseDate"]/following-sibling::text()[2]
之后就可以拿到标注2的值
成功拿到标注2的值“58”后,如果我们好想再拿到标注3的"45分钟"这个值, 那我们就算算要相邻几个元素, 经过不断修改following-sibling::text()[index]中index的值最后发现是相邻的第4个值。
*[@id="info"]/span[@property="v:initialReleaseDate"]/following-sibling::text()[4]