1.下載圖片的兩種方法:
1). urllib.request.urlretrieve 方法:方法簡(jiǎn)單,直接對(duì)獲取到的圖片鏈接進(jìn)行下載。
urlretrieve(url,path)
2). requests寫入方法:對(duì)圖片鏈接進(jìn)行請(qǐng)求,文件寫入時(shí)采用‘wb’方式,寫入數(shù)據(jù)為r.content。
r = requests.get(url)
with open(filename, 'wb') as f:
f.write(r.content)
2.實(shí)例:百度貼吧圖片,共67張圖片。
#方法一
import re
import urllib.request
url = "http://tieba.baidu.com/p/2460150866"
response = urllib.request.urlopen(url).read().decode('UTF-8')
##response = urllib.request.urlopen(url).read().decode() #等價(jià)于上一句,默認(rèn)用UTF-8來解碼
imglist = re.findall('src="(.+?\.jpg)" pic_ext',response)
x = 0
for imgurl in imglist:
urllib.request.urlretrieve(imgurl,"F:/{}.jpg".format(x)) #遠(yuǎn)程下載圖片
x +=1
print("第",x,"張")
print("Finshed!")
#方法二
import re
import requests
url = "http://tieba.baidu.com/p/2460150866"
r = requests.get(url)
imglist = re.findall('src="(.+?\.jpg)" pic_ext',r.text)
x = 0
for imgurl in imglist:
imgres = requests.get(imgurl)
with open("F:/{}.jpg".format(x),"wb") as f: ##保存圖片
f.write(imgres.content)
x +=1
print("第",x,"張")
print("Finshed!")