
scrapy 如何合并列表页和详情页内容到一个 item 中
scrapy 使用 meta 传递参数,可以解决列表页和详情页内容合并到一个 item 中的问题。
在列表页解析函数中:
def parse(self, response):
# 获取列表页信息(标题、时间、url)
# 将列表页信息传递给详情页解析函数
for url in urls:
yield scrapy.request(url, meta={'list_info': list_info}, callback=self.parse_item)在详情页解析函数中:
def parse_item(self, response):
# 获取详情页信息(内容)
# 从 meta 中获取列表页信息
list_info = response.meta['list_info']
# 合并列表页和详情页信息
item = Item()
item['title'] = list_info['title']
item['time'] = list_info['time']
item['url'] = list_info['url']
item['content'] = content
yield item










