爬坑總結(jié)
百度上搜了好多地方 都是少些了在setting.py的配置 然后看著老版本的文檔走了不少?gòu)澛妨骸⑵鋵?shí)文檔上說(shuō)的還是比較清楚的终畅、比百度出來(lái)的結(jié)果好多了
1论皆、配置
在setting.py中加入以下代碼,其實(shí)創(chuàng)建的時(shí)候就已經(jīng)自動(dòng)添加了只不過(guò)系統(tǒng)默認(rèn)注釋掉了 打開(kāi)就好了
ITEM_PIPELINES = {
'enduction.pipelines.EnductionPipeline': 300,
}
2、編寫(xiě)代碼
編寫(xiě)pipelines代碼
def get_media_requests(self, item, info):
print('-----')
for file_urls in item['file_urls']:
yield scrapy.Request(file_urls, meta={'item': item})
def file_path(self, request, response=None, info=None):
item = request.meta['item'] # 通過(guò)上面的meta傳遞過(guò)來(lái)item
down_file_name = './full/{0}.zip'.format(item['title'])
return down_file_name
3脐瑰、注意
系統(tǒng)默認(rèn)會(huì)有process_item函數(shù)、一定要注釋掉廷臼,否則系統(tǒng)不會(huì)調(diào)用get_media_requests 方法苍在。這個(gè)地方所有的教程都沒(méi)寫(xiě),坑爹以為沒(méi)事荠商。結(jié)果爬坑爬的類(lèi)死了
def process_item(self, item, spider):
pass