Pipelines 是將數(shù)據(jù)存儲化操作
class MeijuPipeline(object):
def process_item(self, item, spider):
# 往文件中存儲并且存儲格式為 json
# 要點:需要將出入的 item 對象進行轉(zhuǎn)為為字典類型
json.dump(dict(item),open('meiju.json','a',encoding='utf-8'),ensure_ascii=False)
return item
此時函數(shù)并沒有被調(diào)用,因為沒有 開啟管道 需要做以下操作
vim settings.py
# 第67行下面的字典處解開注釋
#
ITEM_PIPELINES = {
# 注釋掉該默認行(默認的爬蟲管道),沒有用處,后面的300 表示優(yōu)先級
# 'mySpider.pipelines.MyspiderPipeline': 300,
'mySpider.pipelines.MeijuPipeline': 300
}
注意檢查 mySpider/spiders/meiju.py 中厄密茨實例化對象后面有沒有yield操作,否則無法執(zhí)行管道內(nèi)容