初識反爬蟲

2022-05-27 15:39:10 字數 1260 閱讀 8364

瀏覽器在傳送請求的時候,會附帶一部分瀏覽器及其當前系統環境的引數給伺服器,伺服器會通過user-agent的值來區分不同的瀏覽器。

普通使用者通過瀏覽器訪問**的速度相對爬蟲而言要慢的多,所以不少**會利用這一點對訪問頻度設定乙個閾值,如果乙個ip單位時間內訪問頻度超過了預設的閾值,將會對該ip做出訪問限制。

通常需要經過驗證碼驗證後才能繼續正常訪問,嚴重的甚至會禁

止該ip訪問**一段時間。

有部分**不論訪問頻度如何,一定要來訪者輸入驗證碼才能繼續操作。例如12306**,不關是登入還是購票,全部都需要驗證碼驗證,與訪問頻度無關。

一些社交**常常會變換網頁結構,而爬蟲大部分情況下都需要通過網頁結構來解析需要的資料,所以這種做飯也能起來反爬蟲的作業。在網頁結構變換後,爬蟲往往無法在原本的網頁位置找到原本需要的內容。

針對之前介紹的常見的反爬蟲手段,可以制定對應的爬取策略如下。

傳送模擬user- agent:通過傳送模擬user- agent來通過檢驗,將要傳送至**伺服器的請 求的user-agent值偽裝成般使用者登入**時使用的user-agent值。

調整訪問頻度:通過備用ip測試**的訪問頻率閾值,然後設定訪問頻率比閾值略低。這種方法既能保證爬取的穩定性,又能使效率又不至於過於低下。

通過驗證碼校驗:使用ip**,更換爬蟲ip;通過演算法識別驗證碼;使用cookie繞過驗證碼。➢應對**結構變化:只爬取一次時,在其**結構調整之前,將需要的資料全部爬取下來;使用指令碼對**結構進行監測,結構變化時,發出告警並及時停止爬蟲。

通過賬號許可權限制:通過模擬登入的方法進行規避,往往也需要通過驗證碼檢驗。

通過**ip規避:通過**進行ip更換可有效規避**檢測,需注意公用ip**池是**重點監測物件。

爬蟲 爬蟲初識

網路爬蟲 又被稱為網頁蜘蛛,網路機械人 是一種按照一定的規則,自動地抓取全球資訊網資訊的程式或者指令碼,通俗的講就是通過程式去獲取web頁面上自己想要的資料,也就是自動抓取資料。發起請求 通過http庫向目標站點發起請求,也就是傳送乙個request,請求可以包含額外的header等資訊,等待伺服器...

Python 反爬蟲 文字混淆反爬蟲

文中案例參考 github專案 注意 相同的字形的寬高或者輪廓點可能會不一樣,但是它們描述的會是乙個字形 因此,只有起止座標和點座標資料完全一樣的字形,我們才能肯定它們是相同的字元 參考案例005及書中p202 瀏覽器器物件 bom 詳細dom和bom物件屬性和方法檢視圖書p66 p69 使用者憑證...

python反爬蟲策略 python反爬蟲手冊

user agent識別 修改請求頭資訊裡的user agent 請求頭資訊識別 比如說referer,content type,請求方法 post,get 構造相應的請求頭資訊。比如說referer,我們在提取url的時候,要把url所在頁面的url也儲存起來,並放到request.headers...