第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

Python:使用scrapy框架的ImagesPipeline下載圖片如何保持原文件名呢?

Python:使用scrapy框架的ImagesPipeline下載圖片如何保持原文件名呢?

紅糖糍粑 2019-04-08 11:18:23
仔細看了下scrapy的官方文檔關于ImagesPipeline的介紹說明及使用例子:DownloadingItemImages感覺官方文檔太過簡單。比如:通過在setting.py文件中通過給IMAGES_STORE賦值,就可以指定圖片的保存路徑。并且默認情況下,文件名是通過對url使用SHA1hash得來的。現(xiàn)在我想以原來的圖片名進行保存,不知道該如何做,希望有經(jīng)驗的朋友幫忙指點下~另外求大家?guī)兔ν扑]下關于scrapy的相關書籍(中英文都行)
查看完整描述

2 回答

?
紅顏莎娜

TA貢獻1842條經(jīng)驗 獲得超13個贊

修改file_path對原代碼侵入太大,如果只是為了修改文件路徑的話,可以在item_completed對文件進行重命名。
classNeteaseautoImagePipeline(ImagesPipeline):
defget_media_requests(self,item,info):
forimage_urlinitem['image_urls']:
yieldscrapy.Request(image_url.replace('120x90','800x600'))
defitem_completed(self,results,item,info):
image_paths=[x['path']forok,xinresultsifok]
ifnotimage_paths:
raiseDropItem("Itemcontainsnoimages")
ifitem['jk']:
newname=item['car']+'-'+item['jk']+'-'+item['model']+'.jpg'
else:
newname=item['car']+'-'+item['model']+'.jpg'
os.rename("/neteaseauto/"+image_paths[0],"/neteaseauto/"+newname)
returnitem
                            
查看完整回答
反對 回復 2019-04-08
  • 2 回答
  • 0 關注
  • 367 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號