如何从XPath中的类属性获取标题(Python/scrapy)

2024-05-15 04:35:29 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在从tripadvisor获取数据,但是第一个数据大部分是相对日期,其余的是正常的年/月/日,但是经过仔细检查,我发现相对日期有这个

<span class="ratingDate relativeDate" title="20 June 2015">Reviewed 4 weeks ago
</span>

我使用这个Xpath来获取数据

response.xpath('//div[@class="col2of2"]//span[@class="ratingDate relativeDat
e" or @class="ratingDate"]/text()').extract()

我的问题是如何添加@title以便获得具有正常日期格式的标题。

我试过了

response.xpath('//div[@class="col2of2"]//span[@class="ratingDate relativeDat
e"/@title or @class="ratingDate"]/text()').extract()

response.xpath('//div[@class="col2of2"]//span[@class="ratingDate relativeDat
e" or @class="ratingDate"]/@title/text()').extract()

Tags: or数据textdivtitleresponseextractxpath
1条回答
网友
1楼 · 发布于 2024-05-15 04:35:29

在spider中,您必须执行一个条件语句,该语句将动态检查xpath是否包含值。

这是我的演唱会。

item['date'] = sel.xpath('//*[@class="ratingDate relativeDate"]/@title').extract()
item['date'] += sel.xpath('//div[@class="col2of2"]//span[@class="ratingDate"]/text()').extract()

相关问题 更多 >

    热门问题