溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

web開發(fā)中的反爬技術(shù)有哪些

發(fā)布時(shí)間:2022-01-11 09:29:56 來源:億速云 閱讀:128 作者:iii 欄目:編程語言

本篇內(nèi)容主要講解“web開發(fā)中的反爬技術(shù)有哪些”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“web開發(fā)中的反爬技術(shù)有哪些”吧!

1、user-agent

數(shù)據(jù)請(qǐng)求頭,最初級(jí)的反爬,只要在請(qǐng)求中模擬請(qǐng)求頭即可輕松飄過。

解決方法:可以自己設(shè)置一下user-agent,或者更好的是,可以從一系列的user-agent里隨機(jī)挑出一個(gè)符合標(biāo)準(zhǔn)的使用

2、驗(yàn)證碼

驗(yàn)證碼是最常用的反爬蟲措施,但簡(jiǎn)單驗(yàn)證碼通過機(jī)器學(xué)習(xí)自動(dòng)識(shí)別,通常正確率能達(dá)到50%以上甚至更高。

復(fù)雜驗(yàn)證碼通過提交到專門的打碼平臺(tái)進(jìn)行人工打碼,依據(jù)驗(yàn)證碼的復(fù)雜度,打碼工人平均每碼收1-2分錢,成本比較低。也同樣容易被繞過,使得數(shù)據(jù)容易被爬取。

3、封IP

這是最有效也最容易誤殺的方案。該策略建立在 IP 稀有的前提下,目前通過代理池購(gòu)買,ADSL,或者撥號(hào) VPS 等方式,可以低成本獲取數(shù)十萬的 IP 池,導(dǎo)致單純的封IP策略效果越來越差。

解決方法:

比較成熟的方式是:IP代理池

簡(jiǎn)單的說,就是通過ip代理,從不同的ip進(jìn)行訪問,這樣就不會(huì)被封掉ip了。可是ip代理的獲取本身就是一個(gè)很麻煩的事情,網(wǎng)上有免費(fèi)和付費(fèi)的,但是質(zhì)量都層次不齊。如果是企業(yè)里需要的話,可以通過自己購(gòu)買集群云服務(wù)來自建代理池。

4、滑塊驗(yàn)證

滑塊驗(yàn)證結(jié)合了機(jī)器學(xué)習(xí)技術(shù),只需要滑動(dòng)滑塊,而不用看那些復(fù)雜到有時(shí)人眼也無法分辨的字母。但由于部分廠商實(shí)現(xiàn)時(shí)校驗(yàn)算法較為簡(jiǎn)單,導(dǎo)致經(jīng)常只需要相對(duì)簡(jiǎn)單的模擬滑動(dòng)操作就能繞過,從而使得數(shù)據(jù)被惡意爬取。類似案例:淘寶,阿里云,淘寶聯(lián)盟。

5、關(guān)聯(lián)請(qǐng)求上下文

反爬蟲可以通過 Token 或網(wǎng)絡(luò)請(qǐng)求上下文是否進(jìn)行了完整流程的方式來判斷是否真人訪問。但對(duì)具有協(xié)議分析能力的技術(shù)人員來說進(jìn)行全量模擬并沒有太大困難。類似案例:知乎,百度登錄過程。

6、JavaScript 參與運(yùn)算

簡(jiǎn)單的爬蟲無法進(jìn)行 js 運(yùn)算,如果部分中間結(jié)果需要 js 引擎對(duì) js 進(jìn)行解析和運(yùn)算,那么就可以讓攻擊者無法簡(jiǎn)單進(jìn)行爬取。但爬蟲開發(fā)者依然可以通過自帶 js 引擎模塊或直接使用 phantomjs ,chrome等無端瀏覽器進(jìn)行自動(dòng)化解析。

解決方法:這里就要請(qǐng)出一個(gè)大殺器:”PhantomJS“PhantomJS是一個(gè)Python包,他可以在沒有圖形界面的情況下,完全模擬一個(gè)”瀏覽器“,js腳本驗(yàn)證什么的再也不是問題了。

7、提高數(shù)據(jù)獲取成本

當(dāng)面對(duì)的是職業(yè)選手時(shí),只能通過提升對(duì)方人力成本來實(shí)現(xiàn),比如代碼混淆、動(dòng)態(tài)加密方案、假數(shù)據(jù),混淆數(shù)據(jù)等方式,利用開發(fā)速度大于分析速度的優(yōu)勢(shì),來拖垮對(duì)方的意志。如果對(duì)方咬定不放松,那只能持續(xù)對(duì)抗,直到一方由于機(jī)器成本或人力成本放棄。典型案例:汽車之家字體替換,去哪兒網(wǎng)網(wǎng)隱藏在CSS元素坐標(biāo)中。

到此,相信大家對(duì)“web開發(fā)中的反爬技術(shù)有哪些”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI