scrapy选择器中的相对XPath

时间:2017-02-06 11:16:27

标签: python xpath web-scraping scrapy

我正在尝试使用Scrapy从here中提取“Comissõessa que pertence / pertenceu”表中的信息。

由于表的数量可以改变(我想提取几个等价页面的信息),我首先找到相关部分

for node in response.xpath('//*[@class = "ARLabel TextBold"]'):
    texto = node.extract()
    if u'Comissões a que pertence' in texto:
        break

然后我试图通过以下方式找到所需信息的一部分:

node.xpath('.//*[@class = "ARTabResultadosLinhaImpar"]')

但会产生一个空列表。

编辑:删除/文字()

EDIT2:我用一个xpath解决了这个问题:

response.xpath(u"//*[@class = 'ARLabel TextBold' and contains(text(), 'Comissões a que pertence')]/following-sibling::*//span/text()").extract()

1 个答案:

答案 0 :(得分:1)

您可以使用此Xpath:

//*[@class = "ARLabel TextBold" and contains(text(), 'Comissões a que pertence')]

编辑(获取表格):

//table[@title='Tabela com as comissões a que pertence / pertenceu']

Mark回答了这是否解决了您的问题