利用python抓取網絡圖片的步驟:
1.根據給定的網址獲取網頁源代碼
2.利用正則表達式把源代碼中的圖片地址過濾出來
3.根據過濾出來的圖片地址下載網絡圖片
今天我們用http://www.umei.cc/作為事例,教大家爬取美女圖片:
1:打開http://www.umei.cc/
2:打開網頁源代碼,找到圖片的正則規則:
3:開始爬取
#-*-coding:utf-8-*- # 正則 import re # 網絡交互 import requests # 操作系統功能 import os # 定義一個類 class Spider: #定義一個函數 def savePageInfo(self, _url, _position, _regX): # 要爬的網址 url = _url # 本地地址 position = _position # 獲取網頁源代碼 html = requests.get(url).text
# 正則 regX = _regX pic_url = re.findall(regX,html,re.S) i = 0 for each in pic_url: pic = requests.get( each ) print url + each # 如果文件夾不存在,則創建一個文件夾 if not os.path.isdir(position): os.makedirs(position) fp = open( position+str(i)+'.jpg', 'wb' ) fp.write(pic.content) # print position+each fp.close() i+=1 #===================網頁爬取圖片======================== position_end = '' # 要爬的網址 url = 'http://www.umei.cc/' + position_end # 本地地址 position = '/Users/edison/Desktop/1/' + position_end # 正則 regX = '_blank\'><img src=(.*?) t' #參數 url, 儲存位置, 爬取的正則 spider = Spider() spider.savePageInfo(url, position, regX)
三分鍾學會,如囊中取物。
工具:PyCharm
MT.Team