亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        Python反爬蟲設(shè)計(jì)

        2020-07-29 10:31:30胡立
        關(guān)鍵詞:訪問者爬蟲鼠標(biāo)

        胡立

        隨著大數(shù)據(jù)時(shí)代的來臨,無論是個(gè)人還是企業(yè),對于數(shù)據(jù)的需求都越來越大。這種需求催生了如今異常熱門的數(shù)據(jù)產(chǎn)業(yè),也催生了日益完善的網(wǎng)絡(luò)數(shù)據(jù)采集技術(shù)。這種需求擴(kuò)大的同時(shí)也讓網(wǎng)絡(luò)爬蟲日益猖獗,甚至影響到了網(wǎng)站和APP的正常運(yùn)行,高頻的網(wǎng)絡(luò)爬蟲行為無異于分布式拒絕服務(wù)(DDoS)攻擊。

        為什么要反爬蟲

        在設(shè)計(jì)反爬蟲系統(tǒng)之前,我們先來看看爬蟲會(huì)給網(wǎng)站帶來什么問題?

        本質(zhì)上來說,互聯(lián)網(wǎng)上可以供人們?yōu)g覽、查看和使用的網(wǎng)站及其網(wǎng)站上的數(shù)據(jù),都是公開和允許獲取的,所以并不存在所謂的非法授權(quán)訪問問題。

        爬蟲程序訪問網(wǎng)頁和人訪問網(wǎng)頁沒有本質(zhì)區(qū)別,都是由客戶端向網(wǎng)站服務(wù)器發(fā)起HTTP請求,網(wǎng)站服務(wù)器接收到請求之后將內(nèi)容響應(yīng)返回給客戶端。只要是發(fā)起請求,網(wǎng)站服務(wù)器必然要進(jìn)行響應(yīng),那必然要消耗服務(wù)器的資源。

        網(wǎng)站的訪問者與網(wǎng)站之間是互惠互利的關(guān)系,網(wǎng)站為訪問者提供了自己所需要的必要信息和服務(wù),而訪問者也為網(wǎng)站帶來了流量、訪客和活躍度。所以網(wǎng)站的所有者愿意消耗服務(wù)器的帶寬、磁盤和內(nèi)存,為訪問者提供服務(wù)。

        而爬蟲程序呢?無異于“吃白食”,成倍地消耗網(wǎng)站服務(wù)器資源、占用服務(wù)器帶寬,卻不會(huì)為網(wǎng)站帶來一絲的利益,甚至還會(huì)有損于網(wǎng)站本身。

        識(shí)別爬蟲

        既然討厭爬蟲,就要將爬蟲拒之于網(wǎng)站之外,但是要拒絕爬蟲的訪問,首先當(dāng)然要識(shí)別出網(wǎng)絡(luò)訪問者中的爬蟲程序,那么如何識(shí)別呢?

        1. HTTP請求頭

        這算是最基礎(chǔ)的網(wǎng)絡(luò)爬蟲識(shí)別,正常的網(wǎng)絡(luò)訪問者都是通過瀏覽器對網(wǎng)站進(jìn)行訪問的。而瀏覽器都會(huì)帶上自己的請求頭以表明自己的基礎(chǔ)信息。而這也是最容易被爬蟲程序突破的識(shí)別手段,因?yàn)镠TTP請求頭誰都可以進(jìn)行修改和偽造。

        2. Cookie值

        Cookie通常用來標(biāo)識(shí)網(wǎng)站訪問者的身份,就像一張臨時(shí)憑證,憑借這個(gè)憑證與網(wǎng)站服務(wù)器進(jìn)行身份校對,由于Cookie是保存在客戶端的數(shù)據(jù),因此也可以被修改和偽造。

        3.訪問頻率

        如果一個(gè)訪問者,每隔1 s請求訪問一次網(wǎng)站的某個(gè)頁面,或者一秒鐘請求了幾百次這個(gè)頁面。這個(gè)訪問者就很可能是爬蟲程序,試問有誰能如此快速頻繁地點(diǎn)擊鼠標(biāo)訪問一個(gè)頁面?

        通過訪問頻率識(shí)別爬蟲程序是可行的,但是爬蟲程序也能通過使用大量的代理IP來實(shí)現(xiàn)一個(gè)IP地址只訪問一次的效果,還可以通過隨機(jī)的請求時(shí)間間隔規(guī)避識(shí)別。

        4.鼠標(biāo)行為軌跡

        正常人類訪問者瀏覽網(wǎng)頁勢必不會(huì)像機(jī)器一樣,機(jī)械地移動(dòng)和點(diǎn)擊鼠標(biāo)。而鼠標(biāo)的移動(dòng)和點(diǎn)擊,是可以通過JS腳本捕獲的,所以可以通過判斷訪問者的鼠標(biāo)行為軌跡來判斷訪問者是否為爬蟲程序。

        5. token值

        現(xiàn)在很多網(wǎng)站都是前后端分離開發(fā)的,數(shù)據(jù)通過后端接口返回給前端,前端拿到數(shù)據(jù)再結(jié)合頁面進(jìn)行渲染,所以很多爬蟲程序都直接找數(shù)據(jù)接口,而不是請求頁面。token用在驗(yàn)證這些后端數(shù)據(jù)接口上,一般通過網(wǎng)頁上的某個(gè)密鑰加上時(shí)間和某些數(shù)據(jù)組合加密而成。

        但遺憾的是,上述任何一種識(shí)別爬蟲的手段,都有可能被爬蟲繞過和突破。

        拒絕爬蟲

        就像沒有一勞永逸的網(wǎng)站安全防護(hù)一樣,10年前把3389端口一關(guān),就能防止服務(wù)器成為肉雞,如今各種防火墻、安全措施都加上了,還有可能因?yàn)槟硞€(gè)0Day漏洞被勒索。

        爬蟲與反爬蟲之間,也永遠(yuǎn)都在斗爭和升級(jí),所不同的是,網(wǎng)絡(luò)攻防是放開手腳的無限制級(jí)格斗,而反爬蟲則是帶著拳套和頭盔的拳擊比賽。

        網(wǎng)站為了運(yùn)營,勢必要對外開放內(nèi)容,而開放的內(nèi)容就像是飄忽在非洲大草原的腐肉,吸引著鬣狗的到來,在開放內(nèi)容和避免淪為爬蟲的數(shù)據(jù)礦池之間平衡,是一個(gè)難事。

        1.內(nèi)容上限制內(nèi)容的開放

        開放的內(nèi)容是獲取用戶、流量的基礎(chǔ)。但是內(nèi)容的開放并不是無限制的,非注冊用戶可以看到一篇內(nèi)容、兩篇內(nèi)容,但是不能無限制地看到內(nèi)容。這個(gè)限制,可以是要求登錄、掃碼驗(yàn)證或者接入谷歌驗(yàn)證碼之類的點(diǎn)擊驗(yàn)證機(jī)制。

        現(xiàn)在越來越多的網(wǎng)站采用了有限內(nèi)容開放的機(jī)制,比如微博、知乎和淘寶等,游客可以看到1~2頁的內(nèi)容,但是如果還想繼續(xù),請先登錄。

        2.行為上記錄用戶操作

        需要訪問者進(jìn)行登錄并不能解決問題,因?yàn)槟M登錄一直是網(wǎng)絡(luò)爬蟲程序的一個(gè)熱門發(fā)展分支,無論是圖片驗(yàn)證碼、拼圖、滑塊還是點(diǎn)選漢字,都會(huì)被突破。甚至于短信驗(yàn)證碼都可以通過編寫APP與爬蟲程序和網(wǎng)站之間進(jìn)行通信。

        所以記錄用戶行為必不可少,用戶的一切操作和訪問行為都需要記錄在案,這是分析和處理爬蟲的基礎(chǔ)。

        3.控制上嚴(yán)厲打擊高頻行為

        從實(shí)際來看,也有很多爬蟲程序的運(yùn)行并非是為了往死里薅網(wǎng)站的數(shù)據(jù)和內(nèi)容,其僅是為了方便進(jìn)行手工收集和整理工作,這種類型的爬蟲行為一般會(huì)比人工瀏覽的頻次要高,但是又明顯低于鬣狗般的高頻爬蟲,對這種類型的爬蟲行為可以忽略。

        但是對于影響網(wǎng)站服務(wù)器運(yùn)行的高頻爬蟲行為,必須采取措施,結(jié)合用戶和IP信息,對相關(guān)用戶或IP進(jìn)行處理。

        4.協(xié)議里申明權(quán)利

        網(wǎng)站的所有者必須在網(wǎng)站協(xié)議或用戶協(xié)議中申明,允許正常的瀏覽、訪問和數(shù)據(jù)獲取,對于異常、高頻和威脅網(wǎng)站服務(wù)器穩(wěn)定的行為,將保留進(jìn)一步處理的權(quán)利。

        沒有一個(gè)城池是固若金湯的,也沒有一個(gè)措施可以阻擋所有瘋狂的爬蟲。面對爬蟲的行為,利用各種技術(shù)建立一個(gè)行之有效的識(shí)別、分級(jí)和處理機(jī)制,才能同時(shí)兼顧網(wǎng)站的開放和穩(wěn)定。

        猜你喜歡
        訪問者爬蟲鼠標(biāo)
        利用網(wǎng)絡(luò)爬蟲技術(shù)驗(yàn)證房地產(chǎn)灰犀牛之說
        基于Python的網(wǎng)絡(luò)爬蟲和反爬蟲技術(shù)研究
        Progress in Neural NLP: Modeling, Learning, and Reasoning
        Engineering(2020年3期)2020-09-14 03:42:00
        利用爬蟲技術(shù)的Geo-Gnutel la VANET流量采集
        電子測試(2018年1期)2018-04-18 11:53:04
        大數(shù)據(jù)環(huán)境下基于python的網(wǎng)絡(luò)爬蟲技術(shù)
        電子制作(2017年9期)2017-04-17 03:00:46
        人物專訪的技巧性分析
        采寫編(2016年1期)2016-06-03 07:57:40
        “造訪”與“到訪”
        恭喜劉偉成為本刊網(wǎng)站第3萬位訪問者
        恭喜劉偉成為本刊網(wǎng)站第3萬位訪問者
        45歲的鼠標(biāo)
        亚洲成av人在线观看无堂无码| 中文字幕在线乱码一区| 久久国产人妻一区二区| 女人下面毛多水多视频| 欧美亚洲高清日韩成人| 加勒比一本大道大香蕉| 亚洲一区二区在线观看免费视频| 久久亚洲av无码西西人体| 馬与人黃色毛片一部| 一区二区无码精油按摩| 九九精品国产亚洲av日韩| 国产精品毛片无遮挡| 亚洲欧美精品aaaaaa片| 2022精品久久久久久中文字幕| 国产喷水福利在线视频| 国产免费午夜福利蜜芽无码| 国产精品自产拍在线18禁| 九色综合九色综合色鬼| 男女男在线精品网站免费观看| 久久久精品国产亚洲麻色欲| 海外华人在线免费观看| 国产精品成人va在线观看| 亚洲av无码成人yellow| 青青草原亚洲在线视频| 日韩精品免费一区二区三区观看| 欧美一区二区三区红桃小说| 麻豆国产av尤物网站尤物| 亚洲中文字幕一二区精品自拍| 午夜精品久久久久久久| 人妻无码一区二区三区四区 | 在线观看视频播放| 亚洲狠狠网站色噜噜| 国产三级视频一区二区| 日韩精品成人区中文字幕| 欧美日韩国产成人高清视频| 久久婷婷色香五月综合激情| 蜜桃成熟时日本一区二区 | 无码国产精品一区二区高潮 | 国产精品又黄又爽又色| 免费a级毛片无码a∨蜜芽试看| 搡老熟女老女人一区二区|