這篇文章給大家分享的是有關(guān)Python制作批量爬取網(wǎng)絡(luò)圖片的方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
創(chuàng)新互聯(lián)是一家專注于成都網(wǎng)站設(shè)計、成都做網(wǎng)站與策劃設(shè)計,新樂網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計領(lǐng)域的專業(yè)建站公司;建站業(yè)務(wù)涵蓋:新樂等地區(qū)。新樂做網(wǎng)站價格咨詢:18982081108Python爬蟲爬圖片需要什么?下面用兩種方法制作批量爬取網(wǎng)絡(luò)圖片的方法:
第一種方法:基于urllib實現(xiàn)
要點如下:
1.url_request = request.Request(url)
2.url_response = request.urlopen(url) 或者 url_response = request.urlopen(url_request)
3.data=url_response .read().decode('utf-8')
4.jpglist=re.findall(正則表達式,data)
5.request.urlretrieve(jpgUrl,'%s.jpg' %n) #下載,第一個參數(shù)網(wǎng)址,第二參數(shù)名稱
第一個案例,我們爬取了貓撲上的一個網(wǎng)頁上的圖片,案例代碼如下。
需要說明的是代碼request.urlretrieve(each,'pic2\\%s.jpg' %n)中“pic2\\”代表下載的圖片放置在提前建好的文件夾pic2里。運行代碼結(jié)束之后IDLE和最后結(jié)果如下圖所示。
第二種實現(xiàn)方法:基于requests實現(xiàn)
要點如下:
1.data=requests.get(url).text
2.jpglist=re.findall(正則表達式,data,re.S)
3.pic=requests.get(pic_url,timeout=10)
4. fp=open(pic_name,'wb')
fp.write(pic.content)
fp.close()
在這個案例中我們爬取了一個壁紙網(wǎng)站的網(wǎng)頁,預(yù)測應(yīng)該圖片質(zhì)量比較高吧。完整代碼如下:
我們來看一下運行代碼的結(jié)果,如下圖所示。真心不錯,我們獲得了42張壁紙,而且是在短短幾秒鐘內(nèi)完成的。
感謝各位的閱讀!關(guān)于Python制作批量爬取網(wǎng)絡(luò)圖片的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!