Python爬蟲之下載網頁圖片

傳統的方式是在想要的圖片上鼠標點擊右鍵另存為,或者用截圖的方式保存圖片,其實我們還可以通過使用簡單的Python語言實現圖片的下載并保存到本地,下面讓我們看看如何實現吧

一、確定圖片的URL地址及獲取URL網頁頁面的信息

#coding:utf-8

fromurllib.requestimporturlopen ? ?#導入urlopen

defgetHtml(url):

? ? page = urlopen(url) ??

? ? html = page.read()? ? #讀取URL

? ? returnhtml

html = getHtml("http://g.hiphotos.baidu.com/image/pic/item/8694a4c27d1ed21bd85def25a46eddc450da3f5e.jpg")? ? #訪問URL地址

print(html)

二、通過正則表達篩選想要的頁面數據

www.cnblogs.com/fnng/archive/2013/05/20/3089816.html

www.lxweimin.com/p/6bc77094374a

通過審查頁面元素,可以找到圖片的地址,如下:src=”https://imgsa.baidu.com/forum/pic/item/f6738bd4b31c8701b540a1bf257f9e2f0608fff1.jpg”


摘自百度圖片

修改后代碼如下:

#coding:utf-8

fromurllib.requestimporturlopen

importre

defgetHtml(url):

? ? page = urlopen(url)

? ? html = page.read()

? ? returnhtml

defgetImg():

? ? reg =r'src="(.+?\.jpg)" pic_ext' ? ?#通過正則表達獲取圖片數據

? ? img = re.compile(reg) ? ??

? ? img_list = re.findall(img,html)

? ? returnimg_list

html = getHtml("http://g.hiphotos.baidu.com/image/pic/item/8694a4c27d1ed21bd85def25a46eddc450da3f5e.jpg")

print(html)

三、將獲取的數據保存到本地

通過for循環遍歷并下載到本地,代碼如下:

#coding:utf-8

fromurllib.requestimporturlopen

importre

importurllib

defgetHtml(url):

? ? page = urlopen(url)

? ? html = page.read()

? ? returnhtml

defgetImg():

? ? reg =r'src="(.+?\.jpg)" pic_ext'

? ? img = re.compile(reg)

? ? img_list = re.findall(img,html)

? ? x =0

? ? forimgurlinimg_list:

? ? ? ? urllib.urlretrieve(imgurl,'%s.jpg'% x) ? #urllib.urlretrieve()方法,下載并保留到本地

? ? ? ? x +=1

html = getHtml("http://g.hiphotos.baidu.com/image/pic/item/8694a4c27d1ed21bd85def25a46eddc450da3f5e.jpg")

print(html)

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容