爬蟲的原理

2021-09-28 11:55:08 字數 1520 閱讀 3118

1 什麼是爬蟲?

網路爬蟲(又被稱為網頁蜘蛛,網路機械人)就是模擬瀏覽器傳送網路請求,接收請求響應,一種按照一定的規則,自動地抓取網際網路資訊的程式

原則上,只要是瀏覽器(客戶端)能做的事情,爬蟲都能夠做

2 爬蟲的本質

模擬瀏覽器開啟網頁,獲取網頁中想要的那部分資料

瀏覽器開啟網頁的過程如下:

請求的過程:

瀏覽器先向位址列中的url發起請求,並獲取相應

瀏覽器每獲取乙個響應就對展示出的結果進行新增(載入),js,css等內容會修改頁面的內容,js也可以重新傳送請求,獲取響應

從獲取第乙個響應並在瀏覽器中展示,直到最終獲取全部響應,並在展示的結果中新增內容或修改————這個過程叫做瀏覽器的渲染

注:

瀏覽器渲染出來的頁面和爬蟲請求的頁面很多時候並不一樣

所以在爬蟲中,需要以url位址對應的響應為準來進行資料的提取

3 http 協議

在傳送請求,獲取響應的過程中 就是傳送http或https的請求,獲取http或https的響應

4 爬蟲的分類

5 爬蟲的流程:

(1) 傳送請求: 使用http庫向目標站點發起請求,即傳送乙個request物件

request中包含什麼?

① url

url,即統一資源定位符,也就是我們所說的**;url用來表示網際網路上標準資源的路徑,網際網路上的每個資源都有乙個唯一的url

url格式:http:// host [:port] [path]

② 請求方式

以上,由於網路安全的限制,我們很難向url去發起put、patch、delete的請求,常用的請求就是get、post

③ 請求頭headers

http常見請求頭:

④ 請求體

請求攜帶的資料,如 post請求提交表單資料

(2) 獲取響應:如果伺服器能正常響應,會得到乙個response物件

response中包含什麼?

① 響應狀態

② 響應頭

如 內容型別,型別的長度,伺服器資訊、set-cookie (對方伺服器設定cookie到使用者瀏覽器的快取)

③ 響應體

包含請求資源的內容,如 html、、json

(3) 解析資料

(4) 儲存資料

檔案形式:txt、cvs、excel

資料庫:mysql、mongodb等

爬蟲原理的解析

什麼是request和response 能抓怎樣的資料 怎樣來解析 抓到的資料和看到的不一樣 怎樣儲存資料 瀏覽器傳送訊息給該 所在的伺服器,這個過程叫做http request。伺服器收到瀏覽器傳送的訊息後,能夠根據瀏覽器傳送訊息的內容,做相應處理,然後把訊息回傳給瀏覽器。這個過程叫做http r...

Python爬蟲 二 爬蟲原理

爬蟲就是請求 並提取資料的自動化程式。其中請求,提取,自動化是爬蟲的關鍵!下面我們分析爬蟲的基本流程 發起請求 通過http庫向目標站點發起請求,也就是傳送乙個request,請求可以包含額外的header等資訊,等待伺服器響應 獲取響應內容解析內容 得到的內容可能是html,可以用正規表示式,頁面...

python之爬蟲(二)爬蟲的原理

在上文中我們說了 爬蟲就是請求 並提取資料的自動化程式。其中請求,提取,自動化是爬蟲的關鍵!下面我們分析爬蟲的基本流程 發起請求 通過http庫向目標站點發起請求,也就是傳送乙個request,請求可以包含額外的header等資訊,等待伺服器響應 獲取響應內容解析內容 得到的內容可能是html,可以...