1. 程式人生 > >最詳細爬蟲入門教程!花半小時你應該就能去爬一些小東西了!

最詳細爬蟲入門教程!花半小時你應該就能去爬一些小東西了!

爬蟲入門 request -a load() 簡單 agent urllib2 com 入門教程

技術分享圖片

爬蟲對目標網頁爬取的過程可以參考下面黑色文字部分:

  • 首先訪問初始url,獲取其相應內容對相應內容進行解析,提取感興趣的信息和新的鏈接將上一步提取到的數據存儲,將獲取到的鏈接去重並存儲至倉庫從url倉庫獲得一條未爬取過的url,開始新的循環
技術分享圖片

圖片中由黑色文字組成的循環應該很好理解,那麽具體到編程上來說,則必須將上面的流程進行抽象,我們可以編寫幾個元件,每個元件完成一項功能,上圖中的藍底白字就是對這一流程的抽象:

技術分享圖片

技術分享圖片

爬蟲調度器將要完成整個循環,下面寫出python下爬蟲調度器的程序:

技術分享圖片

存儲器、下載器、解析器和url管理器!

首先,還是來看看下面這張圖,URL管理器到底應該具有哪些功能?

技術分享圖片

技術分享圖片

技術分享圖片

下面來說說下載器。

下載器的作用就是接受URL管理器傳遞給它的一個url,然後把該網頁的內容下載下來。python自帶有urllib和urllib2等庫(這兩個庫在python3中合並為urllib),它們的作用就是獲取指定的網頁內容。不過,在這裏我們要使用一個更加簡潔好用而且功能更加強大的模塊:Requests(查看文檔)。

Requests並非python自帶模塊,需要安裝。關於其具體使用方法請查看相關文檔,在此不多做介紹。

下載器接受一個url作為參數,返回值為下載到的網頁內容(格式為str)。下面就是一個簡單的下載器,其中只有一個簡單的函數download():

技術分享圖片

在requests請求中設置User-Agent的目的是偽裝成瀏覽器,這是一只優秀的爬蟲應該有的覺悟。

URL管理器和下載器相對簡單!剩下的下次介紹,希望能幫到零基礎小白的你!

進群:125240963 即可獲取數十套PDF!

最詳細爬蟲入門教程!花半小時你應該就能去爬一些小東西了!