av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

Python Scrapy圖片爬取原理及代碼實例

瀏覽:106日期:2022-07-21 14:47:08

1.在爬蟲文件中只需要解析提取出圖片地址,然后將地址提交給管道

在管道文件對圖片進行下載和持久化存儲

class ImgSpider(scrapy.Spider): name = ’img’ # allowed_domains = [’www.xxx.com’] start_urls = [’http://www.521609.com/daxuemeinv/’] url = ’http://www.521609.com/daxuemeinv/list8%d.html’ pageNum = 1 def parse(self, response): li_list = response.xpath(’//*[@id='content']/div[2]/div[2]/ul/li’) for li in li_list: img_src = ’http://www.521609.com’+li.xpath(’./a[1]/img/@src’).extract_first() item = ImgproItem() item[’src’] = img_src yield item

2.配置文件修改

配置文件要增加IMAGES_STORE = ’./imgsLib’表明圖片存放的路徑

3.管道類的修改

原本管道類繼承的object,處理item對象使用時process_item方法,該方法不能發送請求,要想對圖片地址發送請求,需要繼承ImagesPipeline類,然后重寫該類中的三個方法:get_media_requests,file_path,item_completed

from scrapy.pipelines.images import ImagesPipelineimport scrapyclass ImgproPipeline(ImagesPipeline): #對某一個媒體資源進行請求發送 #item就是接收到的spider提交過來的item def get_media_requests(self, item, info): yield scrapy.Request(item[’src’]) #制定媒體數據存儲的名稱 def file_path(self, request, response=None, info=None): name = request.url.split(’/’)[-1] print(’正在下載:’,name) return name #將item傳遞給下一個即將給執行的管道類 def item_completed(self, results, item, info): return item

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持好吧啦網。

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 欧美日韩专区 | 国产精品3区 | 99热精品在线观看 | 国产精品久久久久久久久久久免费看 | 日韩在线小视频 | 国产日韩欧美在线观看 | 成人综合视频在线 | 国产伦精品一区二区三毛 | 精品视频一区二区 | 国产在线观看一区二区三区 | 综合久久综合久久 | 在线观看国产视频 | 美国av片在线观看 | 国产精品爱久久久久久久 | 亚洲欧美在线视频 | 欧美成人激情 | 国产高清精品一区二区三区 | 麻豆av一区二区三区久久 | 精品一区国产 | 福利视频网站 | 婷婷中文在线 | 九九视频在线观看 | 中文字幕久久精品 | 亚洲www | 欧美大片久久久 | sese视频在线观看 | 丝袜 亚洲 欧美 日韩 综合 | 精品免费观看 | 午夜电影福利 | 午夜色婷婷 | 国产精品久久久久久婷婷天堂 | 亚洲视频在线播放 | 亚洲视频在线看 | 黄色毛片网站在线观看 | 精品福利在线视频 | 精品国产久 | 国产一区二区三区在线 | 久久久激情| 免费看一级毛片 | 狠狠狠| 午夜视频免费网站 |