我有这个课:
class PitchforkTracks(scrapy.Spider):
name = "pitchfork_tracks"
allowed_domains = ["pitchfork.com"]
start_urls = [
"http://pitchfork.com/reviews/best/tracks/?page=1",
"http://pitchfork.com/reviews/best/tracks/?page=2",
"http://pitchfork.com/reviews/best/tracks/?page=3",
"http://pitchfork.com/reviews/best/tracks/?page=4",
"http://pitchfork.com/reviews/best/tracks/?page=5",
]
def parse(self, response):
for sel in response.xpath('//div[@class="track-details"]/div[@class="row"]'):
item = PitchforkItem()
item['artist'] = sel.xpath('.//li/text()').extract_first()
item['track'] = sel.xpath('.//h2[@class="title"]/text()').extract_first()
yield item
抓取此项目:
<h2 class="title" data-reactid="...>“Colours”</h2>
结果,但是打印如下:
{'artist': u'The Avalanches', 'track': u'\u201cColours\u201d'}
我在哪里以及如何去除
quotes
,即\u201c
和\u201d
? 最佳答案
在parse(self, response)
内,添加:
item['track'] = sel.xpath('.//h2[@class="title"]/text()').extract_first().strip(u'\u201c\u201d')