使用xpath提取表列值(不包括<sup>)

时间:2018-11-22 02:54:24

标签: python xpath scrapy

我正在尝试使用scrapy抓取一些表列值,并停留在如何获取列值上。现在的代码是

response.xpath('//table//tr//td[4]//text()').extract()

它确实提取了列值,但问题是某些列确实具有

<td> value 1 <sup> sup text </sup> </td> 

并且返回值是value1 , sup text,这不是我需要的。我只需要尝试使用td[4][not(sup)]的代码,但它会完全忽略<sup>的列。

是否可以获取除<sup>以外的值。

1 个答案:

答案 0 :(得分:1)

您需要

//td[4]/text()

获取子文本节点。请注意,//td[4]//text()-返回后代文本节点(包括来自sup的文本)