Pipelines 是将数据存储化操作
class MeijuPipeline(object):
def process_item(self, item, spider):
# 往文件中存储并且存储格式为 json
# 要点:需要将出入的 item 对象进行转为为字典类型
json.dump(dict(item),open('meiju.json','a',encoding='utf-8'),ensure_ascii=False)
return item
此时函数并没有被调用,因为没有 开启管道 需要做以下操作
vim settings.py
# 第67行下面的字典处解开注释
#
ITEM_PIPELINES = {
# 注释掉该默认行(默认的爬虫管道),没有用处,后面的300 表示优先级
# 'mySpider.pipelines.MyspiderPipeline': 300,
'mySpider.pipelines.MeijuPipeline': 300
}
注意检查 mySpider/spiders/meiju.py 中厄密茨实例化对象后面有没有yield操作,否则无法执行管道内容