999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

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

2020-07-29 10:31:30胡立
關(guān)鍵詞:程序內(nèi)容用戶

胡立

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

為什么要反爬蟲(chóng)

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

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

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

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

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

識(shí)別爬蟲(chóng)

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

1. HTTP請(qǐng)求頭

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

2. Cookie值

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

3.訪問(wèn)頻率

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

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

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

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

5. token值

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

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

拒絕爬蟲(chóng)

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

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

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

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

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

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

2.行為上記錄用戶操作

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

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

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

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

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

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

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

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

猜你喜歡
程序內(nèi)容用戶
內(nèi)容回顧溫故知新
試論我國(guó)未決羈押程序的立法完善
“程序猿”的生活什么樣
英國(guó)與歐盟正式啟動(dòng)“離婚”程序程序
關(guān)注用戶
商用汽車(2016年11期)2016-12-19 01:20:16
主要內(nèi)容
臺(tái)聲(2016年2期)2016-09-16 01:06:53
關(guān)注用戶
商用汽車(2016年6期)2016-06-29 09:18:54
關(guān)注用戶
商用汽車(2016年4期)2016-05-09 01:23:12
創(chuàng)衛(wèi)暗訪程序有待改進(jìn)
如何獲取一億海外用戶
主站蜘蛛池模板: 一级毛片免费高清视频| 成人午夜亚洲影视在线观看| 最新亚洲人成网站在线观看| 丰满人妻久久中文字幕| 97视频精品全国免费观看| 亚洲国产日韩欧美在线| 国产乱子伦手机在线| 亚洲国产第一区二区香蕉| 国产91麻豆免费观看| 在线精品亚洲一区二区古装| 午夜爽爽视频| 成人免费网站在线观看| 福利在线一区| 国产在线一区二区视频| 久久中文字幕av不卡一区二区| 亚洲一级毛片| 99久久无色码中文字幕| 国产精品美人久久久久久AV| 國產尤物AV尤物在線觀看| 日韩午夜片| 欧美成人aⅴ| 日韩成人免费网站| 国产产在线精品亚洲aavv| 国产无码网站在线观看| 国产亚洲男人的天堂在线观看| 视频二区亚洲精品| 欧美伦理一区| 亚洲九九视频| 国产理论一区| 亚洲色精品国产一区二区三区| 国产成人精品一区二区免费看京| 99ri国产在线| 囯产av无码片毛片一级| 色综合久久久久8天国| 永久免费无码成人网站| 亚洲一区二区三区麻豆| 一级不卡毛片| 亚洲品质国产精品无码| 日韩欧美国产综合| 伊在人亚洲香蕉精品播放| 国产区成人精品视频| 亚洲中文字幕国产av| 区国产精品搜索视频| 国产精品视频公开费视频| 免费观看成人久久网免费观看| 亚洲一区网站| 亚洲浓毛av| 国产精品嫩草影院av| 九九视频免费看| 久久综合伊人 六十路| 操美女免费网站| 免费毛片网站在线观看| 亚洲福利视频一区二区| 中文字幕亚洲电影| 亚洲精品天堂自在久久77| 97成人在线视频| www.精品国产| 久久精品无码一区二区日韩免费| 老司国产精品视频| 91精品国产91久久久久久三级| 91娇喘视频| 国产一级视频在线观看网站| 亚洲精品无码av中文字幕| 日韩精品成人在线| 成年午夜精品久久精品| 97色婷婷成人综合在线观看| 男女性色大片免费网站| 欧美成人综合在线| 亚洲成综合人影院在院播放| 毛片手机在线看| 久久综合九色综合97婷婷| 亚洲一区二区在线无码| 欧美另类视频一区二区三区| 性激烈欧美三级在线播放| 欧美日韩在线国产| 日韩欧美国产成人| 国产导航在线| 看看一级毛片| 亚洲一区二区三区国产精华液| 高清国产va日韩亚洲免费午夜电影| 萌白酱国产一区二区| 欧美伊人色综合久久天天|