手把手教你爬取天堂網1920*1080大圖片(批量下載)——理論篇

/1 前言/html

平時咱們要下載圖片,要要一個一個點擊下載是否是以爲很麻煩?那有沒有更加簡便的方法呢?答案是確定的,這裏咱們以天堂網爲例,批量下載天堂網的圖片。python

/2 項目準備工做/瀏覽器

首先 咱們第一步咱們要安裝一個pycham的軟件。能夠參考這篇文章:Python環境搭建—安利Python小白的Python和Pycharm安裝詳細教程網絡

天堂網的網址:框架

https://www.ivsky.com/bizhi/1920x1080/複製代碼

咱們須要下載幾個庫,怎麼下載呢?打開pycharm,依次點擊File,再點開Settings,以下圖所示。學習

打開後會出現這個界面點擊你的項目名字(project:(你的項目名字)),以後在project  interpreter下,點擊加號,然後下載咱們須要的庫,以下圖所示。網站

本項目須要用到的是庫是requests、lxml、fake_useragent,以下圖所示。fake_useragent通常是沒有的,須要經過下面的命令進行安裝:url

pip install fake_useragent複製代碼

/3 項目實現/spa

一、導入須要的庫(requests,lxml, fake_useragent)。code

二、我用了封裝方法去實現各個部分的功能。首先要寫一個框架:構造一個類TianTangWebsite ,而後定義一個init方法裏繼承(self),再定義一個主方法(main)。最後實現這個main方法,依次一步一步進行實現。

三、咱們把天堂網的網址拿過來,構造請求頭。這裏說一下這個UserAgent的獲取方法。在打開天堂網的網站後,按下鍵盤上的F12鍵,以後會進入到開發者模式,以後點開network,以下圖所示。

四、然後隨便點擊一個name,複製header裏邊的UserAgent就能夠了。 

五、咱們點擊下一頁的地址觀察網址的變化,以下所示:

https://www.ivsky.com/bizhi/1920x1080/index_2.html
https://www.ivsky.com/bizhi/1920x1080/index_3.html
https://www.ivsky.com/bizhi/1920x1080/index_4.html複製代碼

很明顯的發現,這個網址的網頁數字一直在變化。咱們能夠用格式化{}去代替變化的值,相似這樣:

https://www.ivsky.com/bizhi/1920x1080/index_{}.html複製代碼

六、而後咱們用for循環去遍歷這些網址,代碼以下所示:

def main(self):
    for i in range(1,2):#頁數隨機客戶隨便 設置
      url=self.url.format(i)
      print(url)複製代碼

七、咱們定義這個get_home()方法去請求到這個網址。

九、咱們須要解析獲得的數據,接下來定義一個xiap的方法,拿到咱們請求的網址。接下來就是該項目的關鍵了。

十、至此,針對反爬蟲的措施咱們已經提早作好了準備,下一步將進行網頁結構的分析以及網頁圖片地址數據的提取,並針對解析出來的圖片地址予以批量下載,具體實現我們下篇文章進行詳解。

/4 小結/

本文主要內容爲對圖片網站進行了基本簡介,基於 Python 中的爬蟲庫 requestslxmlfake_useragent,提早部署了請求頭,模擬瀏覽器,針對反爬蟲的措施咱們已經提早作好了準備。

下篇文章將帶你們進行網頁結構的分析以及網頁圖片地址數據的提取,並針對解析出來的圖片地址予以批量下載,敬請期待~~

往期精彩文章推薦:

相關文章
相關標籤/搜索