我试图刮一个网站使用Scrappy工具的Python。
我可以 *
我想在输出中添加一个额外的字段,如“序列号”:“3001”,对于它刮的每个产品,序列号应递增1,如3002,3003,3004....
def parse_dir_contents(self,response):
cat = response.meta['cat']
serial_id = I
item = []
content = {}
content['serial_id'] = serial_id
content['url'] = response.url
content['category'] = cat
brand = response.xpath('//div[@class="pageinfo__brdcrmb"]/text()').extract()[0].split('/')
content['brand'] = brand[1].strip()
I = I + 1
item.append(content)
output = json.dumps(item, sort_keys=True, indent=4, separators=(',', ': '))
self.json_file.write(output)
字符串
对于上面的代码,我得到一个错误,如
content['url'] = response.url NameError:未定义名称“response”
1条答案
按热度按时间xxb16uws1#
第三行中的名称
I
未定义。改成字符串
然后增加:
型
您可以使用scrapy的好处(如管道,定义项目和.)并保持代码整洁。
阅读这些有用的文档:
https://doc.scrapy.org/en/latest/