1. 程式人生 > 實用技巧 >一篇文章教會你利用Python網路爬蟲獲取素材圖片

一篇文章教會你利用Python網路爬蟲獲取素材圖片

【一、專案背景】

在素材網想找到合適圖片需要一頁一頁往下翻,現在學會python就可以用程式把所有圖片儲存下來,慢慢挑選合適的圖片。

【二、專案目標】

1、根據給定的網址獲取網頁原始碼。

2、利用正則表示式把原始碼中的圖片地址過濾出來。

3、過濾出來的圖片地址下載素材圖片。

【三、涉及的庫和網站】

1、網址如下:

https://www.51miz.com/

2、涉及的庫:requestslxml

【四、專案分析】

首先需要解決如何對下一頁的網址進行請求的問題。可以點選下一頁的按鈕,觀察到網站的變化分別如下所示:

https://www.51miz.com/so-sucai/1789243.html
https://www.51miz.com/so-sucai/1789243/p_2/
https://www.51miz.com/so-sucai/1789243/p_3/

我們可以發現圖片頁數是1789243/p{},p{}花括號數字表示圖片哪一頁。

【五、專案實施】

1、開啟覓知網,在搜尋中輸入你想要的圖片素材(以鼠年素材圖片為例)。

2、根據上一步對網址的分析,首先我們定義一個類叫做ImageSpider,類裡面定義初始化函式、傳送請求獲取響應資料函式、解析函式、主函式。首先初始化函式,準備url地址和headers,程式碼如下圖所示。

3、傳送請求獲取響應資料函式。

4、解析資料,使用xpath獲取二級頁面連結,最後把圖片儲存在資料夾中。使用谷歌瀏覽器選擇開發者工具或直接按F12,發現我們需要的圖片src是在img標籤下的,於是用Python的requests提取該元件。

5、主函式,程式碼如下圖所示。

【六、效果展示】

1、執行程式,在控制檯輸入你要爬取的頁數,如下圖所示。

2、在本地可以看到效果圖,如下圖所示。

【七、總結】

1、不建議抓取太多資料,容易對伺服器造成負載,淺嘗輒止即可。

2、希望通過這個專案,能夠幫助大家下載到素材圖片。

3、本文基於Python網路爬蟲,利用爬蟲庫,實現素材圖片的獲取。實現的時候,總會有各種各樣的問題,切勿眼高手低,勤動手,才可以理解的更加深刻。

4、需要本文原始碼的小夥伴,後臺回覆“素材圖片”四個字,即可獲取。

看完本文有收穫?請轉發分享給更多的人

IT共享之家

入群請在微信後臺回覆【入群】


想學習更多Python網路爬蟲與資料探勘知識,可前往專業網站:

http://pdcfighting.com/