python3簡單實現一個爬去網站圖片的小功能:
有時候想要下載自己喜歡的多個圖片時,不需要一個個點擊來下載,使用python腳本批量拉取,並保存到本地。
1. 首先找到自己要下載圖片的url
2. 上代碼:
1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3 # __Author__: 陌路疏途 4 5 6 # 四部曲:1.導入模塊 2.獲取網頁源碼 3.正則匹配下載 4.調用函數 7 8 import urllib.request #獲取網址模塊 9 import re #正則匹配模塊 10 11 #定義獲取網頁源代碼函數 12 def gethtml(): 13 papg = urllib.request.urlopen('http://www.wmpic.me/tupian/cute') #打開圖片的網址 14 html = papg.read() #用read方法讀成網頁源代碼,格式為字節對象 15 html = html.decode('UTF-8') #定義編碼格式解碼字符串(字節轉換為字符串) 16 return html 17 18 #匹配 19 20 def getimg(html): 21 imgre = re.compile(r' src="(.*?)" class=')#正則匹配,compile為把正則表達式編譯成一個正則表達式對象,提供效率。 22 imglist = re.findall(imgre, html)#獲取字符串中所有匹配的字符串 23 x = 0 #定義全局變量默認為0 24 for imgurl in imglist: #循環圖片字符串列表並輸出 25 print(imgurl) 26 27 #下載 28 urllib.request.urlretrieve(imgurl,'D:\\pictures\%s.jpg' % x)#把圖片下載到本地並指定保存目錄 29 x += 1 #每次自增1 30 print("正在下載第%s張" % x)#格式化輸出張數 31 32 #調用函數 33 html = gethtml() 34 35 print(getimg(html))
3. 執行腳本輸出信息
4. 進入保存圖片路徑查看:
圖片已經拉取下來,這樣可以很容易得到自己想要的很多圖片。而不用一個個點擊下載。