當我們在瀏覽器中清理上網的痕跡時,通常會看到Cookie。這是什么意思?
事實上,Cookies指的是存儲在用戶本地終端上的數據。有時,復數形式的cookies指的是由一些網站存儲在用戶本地終端上的數據(通常是加密的),以便識別用戶的身份并跟蹤會話。
餅干的作用是什么?
在瀏覽器中,我們經常會涉及到數據的交換,比如你登錄郵箱,登錄一個頁面。我們經常設置30天內記得我或者此時自動登錄的選項。那他們怎么記錄信息呢?答案就是今天的主角cookie,由HTTP服務器設置,存儲在瀏覽器中。但是,HTTP協議是無狀態協議。數據交換后,服務器和客戶端之間的鏈接將被關閉,每次交換數據時都需要建立新的鏈接。
就像我們去超市買東西,沒有記分卡,我們買東西后超市沒有任何消費信息,但是我們設置了記分卡后,超市有我們的消費信息。Cookie就像記分卡,可以節省分數。商品是我們的信息。超市系統就像服務器的密室。http協議是事務處理過程。
爬蟲如何突破網站cookie限制?
有時候我們在訪問一個頁面的時候,經常會跳轉到登陸頁面,比如大家都在線上看用戶空間,這是因為我們不登錄是不允許訪問的。當我們使用爬蟲抓取用戶相關信息的一些數據時,也會發現我們經常抓取的是登陸頁面,這并不是我們想要的結果。
如何解決這個問題?您不能先登錄網站,然后再對其進行爬網。這個時候,餅干是必需。
當我們想要抓取一個人人網的用戶空間信息時,應該怎么做?
1.我們需要在登錄時使用爬蟲抓取Renren.com的請求,并獲取請求中的cookie數據。
2.當使用個人信息頁面的url進行請求時,請求需要攜帶1中的cookie。只有當cookie被攜帶時,服務器才能識別所請求的用戶信息并響應指定的用戶信息頁面數據。
這里需要注意的是,如果需要抓取大量信息,建議多找一些cookie進行輪換,避免被系統檢測到。
除了Cookie限制,爬蟲還需要注意其他的反爬蟲,比如IP限制,就是說要用代理IP來改變IP地址,用其他IP地址繼續訪問,從而突破網絡限制。當然,也有很多限制。爬蟲在收集之前需要分析網站的反爬蟲策略。