Scrapy新手:如何使用response.css抓取文本部分?

4 投票
1 回答
14484 浏览
提问于 2025-04-18 14:13

在我练习的时候,我只想获取文本部分(1,2,3,4,5...),而不想要其他的部分。我该怎么写 response.css("td[class='c1']") 呢?

scrapy shell "https://tw.movies.yahoo.com/chart.html"
response.css("td[class='c1']")

在这里输入图片描述

1 个回答

5

这里有两个选择,一个是用 css(),另一个是用 xpath():

>>> response.css("td.c1 > span::text").extract()
[u'1', u'2', u'3', u'4', u'5', u'6', u'7', u'8', u'9', u'10', u'11', u'12', u'13', u'14', u'15', u'16', u'17', u'18', u'19', u'20']
>>> response.xpath("//td[@class='c1']/span/text()").extract()
[u'1', u'2', u'3', u'4', u'5', u'6', u'7', u'8', u'9', u'10', u'11', u'12', u'13', u'14', u'15', u'16', u'17', u'18', u'19', u'20']

撰写回答