第十講:Python爬取網頁圖片並儲存到本地,包含次層頁面
阿新 • • 發佈:2019-08-26
上一講我們講到了從暱圖網的首頁下載圖片到本地,但是我們發現首頁上面的大部分連結其實都可以進入到二級頁面。
在二級頁面裡面,我們也可以同樣進行圖片的下載,通過層層迴圈我們可以把網址的一部分圖片下載到本地(有些圖片的連結是動態的,而且網站也會檢測盜鏈等反爬蟲設定,這個後續再講)。
首先,我們整理下思路,在首頁這裡爬取圖片的思路如下:
1、通過首頁的地址獲取首頁的原始碼
2、分析原始碼中圖片的連結地址,根據這個地址格式來組裝正則表示式
3、根據正則表示式來批量匹配圖片地址
4、根據匹配的地址進行迴圈下載到本地。
借鑑上面的思路,我們在二級頁面同樣可以使用這些步驟,只需要把首頁的地址更換成二級頁面的地址。
那麼,二級頁面的地址我們在首頁的原始碼分析的時候可以直接獲取,存在另外一個列表(現在為止有兩個列表了,一個是用來儲存頁面的二級連結的,一個是用來儲存本頁面的圖片地址的)。
由於我們爬取圖片的功能都是可以反覆呼叫的,所以我們把這部分的程式碼提取成一個函式。
最終程式碼如下:
執行效果如下:
圖片會一直下載。