Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如果子节点具有属性,请选择以下同级节点_Python_Xpath_Scrapy_Scrapy Splash - Fatal编程技术网

Python 如果子节点具有属性,请选择以下同级节点

Python 如果子节点具有属性,请选择以下同级节点,python,xpath,scrapy,scrapy-splash,Python,Xpath,Scrapy,Scrapy Splash,我正在为站点创建一个刮板: 我正在使用splash插件呈现javascript 我想跟随前几年获取历史数据,前一年有类“不活跃”。因此,我需要一个Xpath表达式,用于查找“活动”年份,并获取前一年的href 以下是HTML的一个片段: <div class="main-menu2 main-menu-gray"><ul class="main-filter"><li><span class="active"><strong><

我正在为站点创建一个刮板:

我正在使用splash插件呈现javascript

我想跟随前几年获取历史数据,前一年有类“不活跃”。因此,我需要一个Xpath表达式,用于查找“活动”年份,并获取前一年的href

以下是HTML的一个片段:

<div class="main-menu2 main-menu-gray"><ul class="main-filter"><li><span class="active"><strong><a href="/darts/europe/european-championship/results/">2018</a></strong></span></li><li><span class="inactive"><strong><a href="/darts/europe/european-championship-2017/results/">2017</a></strong></span></li><li><span class="inactive"><strong><a href="/darts/europe/european-championship-2016/results/">2016</a></strong></span>
我希望这种情况会再次出现:

/darts/europe/european-championship-2017/results/

因为这是当前url的前一年。

这里是xpath中的选项

(//div[@class="main-menu2 main-menu-gray"]/ul/li[.//span[@class="active"]]/following-sibling::li//a)[1]
很简单,但不确定是否必须完全依靠有源元件

(//div[@class='main-menu2 main-menu-gray']//span[@class='inactive']//a)[1]
(//div[@class='main-menu2 main-menu-gray']//span[@class='inactive']//a)[1]