2021-02-04 分類(lèi): 網(wǎng)站建設(shè)
一、前言
一般而言,抓取稍微正規(guī)一點(diǎn)的網(wǎng)站,都會(huì)有反網(wǎng)絡(luò)爬蟲(chóng)的制約。反網(wǎng)絡(luò)爬蟲(chóng)主要有以下幾種方式:
根據(jù)UA判斷。這是最低級(jí)的判斷,一般反網(wǎng)絡(luò)爬蟲(chóng)不會(huì)用這個(gè)做唯一判斷,因?yàn)榉捶淳W(wǎng)絡(luò)爬蟲(chóng)非常容易,直接隨機(jī)UA即可解決。
根據(jù)單IP頻繁訪問(wèn)判斷。這個(gè)判斷簡(jiǎn)單,而且反反網(wǎng)絡(luò)爬蟲(chóng)比較費(fèi)力,反網(wǎng)絡(luò)爬蟲(chóng)好方案。需采用多IP抓取。
根據(jù)Cookie判斷,例如根據(jù)會(huì)員制賬號(hào)密碼登陸,判斷單賬號(hào)短時(shí)間抓取次數(shù)判斷。這個(gè)反反網(wǎng)絡(luò)爬蟲(chóng)也很費(fèi)力。需采用多賬號(hào)抓取。
動(dòng)態(tài)頁(yè)面加載。這個(gè)考驗(yàn)前端工程師的功底,假如前端寫(xiě)的好,各種JS判斷,各種邏輯,像百度,淘寶一樣,post登錄很難。較好的方法,但是對(duì)于大牛,還是防不勝防。反反網(wǎng)絡(luò)爬蟲(chóng)多采用渲染瀏覽器抓取,效率低下。
采用驗(yàn)證碼。這里要不是登錄的時(shí)候有驗(yàn)證碼,要不是判斷是網(wǎng)絡(luò)爬蟲(chóng)時(shí),不封IP,而是采用驗(yàn)證碼驗(yàn)證,例如鏈家網(wǎng)。驗(yàn)證碼是反網(wǎng)絡(luò)爬蟲(chóng)性?xún)r(jià)比較高的方案。反反網(wǎng)絡(luò)爬蟲(chóng)一般接入OCR驗(yàn)證碼識(shí)別平臺(tái)或是人工打碼平臺(tái),亦或是利用Tesseract OCR識(shí)別,亦或是采用神經(jīng)網(wǎng)絡(luò)訓(xùn)練識(shí)別驗(yàn)證碼等。
二、概要
今天咱們先主要來(lái)講一講,如何應(yīng)對(duì)第2條的反反網(wǎng)絡(luò)爬蟲(chóng),如何根據(jù)多IP抓取。根據(jù)多IP網(wǎng)絡(luò)爬蟲(chóng),又分為以下幾種形式:
根據(jù)ADSL撥號(hào)換IP服務(wù)器。每撥一次就會(huì)有一個(gè)新IP,較好解決IP單一問(wèn)題。
假如是局域網(wǎng),帶路由器的,第一種方法可能不好用。這個(gè)時(shí)候可以模擬登陸路由器,控制路由器重新?lián)芴?hào),換IP,這其實(shí)是一種折中的辦法,曲線救國(guó)。
代理IP,利用購(gòu)買(mǎi)的或是網(wǎng)上抓取的免費(fèi)代理IP,實(shí)現(xiàn)多IP網(wǎng)絡(luò)爬蟲(chóng)。
分布式網(wǎng)絡(luò)爬蟲(chóng)。采用多個(gè)服務(wù)器,多個(gè)IP,多個(gè)slave網(wǎng)絡(luò)爬蟲(chóng)同時(shí)運(yùn)行,由master負(fù)責(zé)調(diào)度。效率較高,屬于大型分布式抓取,一般用redis分布式抓取,不表。
最近了解到一種新的加密的代理網(wǎng)絡(luò)。Tor匿名網(wǎng)絡(luò),利用這個(gè)也能匿名換IP。這個(gè)還沒(méi)有詳細(xì)了解,不表。
三、正文
1. ADSL撥號(hào)
我一般是在windows平臺(tái)ADSL撥號(hào),其他平臺(tái)暫時(shí)沒(méi)用過(guò)。windows平臺(tái)撥號(hào),我一般用python的代碼為:
2. 路由器撥號(hào)
假如是局域網(wǎng),帶路由器的。直接調(diào)用windows的rasdial命令無(wú)法撥號(hào)時(shí),這個(gè)時(shí)候可以模擬登陸路由器,控制路由器重新?lián)芴?hào),換IP,這其實(shí)是一種折中的辦法,曲線救國(guó)。下面以登錄小米路由器示例:
利用這個(gè)方法,就實(shí)現(xiàn)了用路由器換IP的目的。該方法的缺陷也是很明顯的。就是不像第一種方法那樣通用?;旧弦粋€(gè)路由器就得編一套代碼,屬于定制代碼。
3. 代理IP
代理IP是最常見(jiàn)的一種多IP網(wǎng)絡(luò)爬蟲(chóng)方法。在請(qǐng)求Headers中加入代理IP地址,即可實(shí)現(xiàn)代理IP抓取。缺陷是爬取速度和代理IP的速度息息相關(guān)。而且好的IP費(fèi)用較高,免費(fèi)的速度普遍不高。
附上requests抓取攜帶代理IP和selenium抓取攜帶代理IP的代碼。
requests:
selenium:
四、尾言
本文主要講了反網(wǎng)絡(luò)爬蟲(chóng)的一些概念,常用的方法,反反網(wǎng)絡(luò)爬蟲(chóng)的一些方法,并且主要介紹了多IP網(wǎng)絡(luò)爬蟲(chóng)的實(shí)現(xiàn)方式,屬于網(wǎng)絡(luò)爬蟲(chóng)領(lǐng)域基礎(chǔ)內(nèi)容。掌握了這些基礎(chǔ)內(nèi)容,以后網(wǎng)絡(luò)爬蟲(chóng)步伐才能邁得堅(jiān)實(shí)。
名稱(chēng)欄目:動(dòng)態(tài)秒換IP服務(wù)器,讓爬蟲(chóng)運(yùn)行更加順利!
當(dāng)前路徑:http://redsoil1982.com.cn/news/99117.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供電子商務(wù)、商城網(wǎng)站、網(wǎng)站營(yíng)銷(xiāo)、網(wǎng)站排名、企業(yè)建站、軟件開(kāi)發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容