国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種網(wǎng)站服務(wù)器爬蟲識(shí)別方法和裝置與流程

      文檔序號(hào):11458655閱讀:536來源:國(guó)知局
      一種網(wǎng)站服務(wù)器爬蟲識(shí)別方法和裝置與流程

      本發(fā)明涉及互聯(lián)網(wǎng)領(lǐng)域,具體涉及一種網(wǎng)站服務(wù)器爬蟲識(shí)別方法和裝置。



      背景技術(shù):

      目前互聯(lián)網(wǎng)應(yīng)用十分繁榮。網(wǎng)絡(luò)爬蟲程序會(huì)占用被爬網(wǎng)站服務(wù)器的寶貴帶寬和計(jì)算資源,另外隨著大數(shù)據(jù)技術(shù)興起,網(wǎng)站數(shù)據(jù)和內(nèi)容資源也日趨成為網(wǎng)站服務(wù)商的核心資產(chǎn)。如何從海量的普通用戶訪問請(qǐng)求中,有效識(shí)別爬蟲機(jī)器人程序的數(shù)據(jù)爬取行為,已成為各大網(wǎng)站急需解決的主要技術(shù)問題之一。

      目前已有反爬蟲工作,往往是每個(gè)網(wǎng)站開發(fā)商各自為戰(zhàn),根據(jù)自己的業(yè)務(wù)特點(diǎn),將反爬蟲內(nèi)置到業(yè)務(wù)服務(wù)器里。但是這一方面增加了各個(gè)網(wǎng)站的技術(shù)和業(yè)務(wù)成本,另一方面這樣的技術(shù)方法往往跟網(wǎng)站具體業(yè)務(wù)耦合度太高,不具備可移植性。

      另外,即便將反爬蟲邏輯跟網(wǎng)站業(yè)務(wù)服務(wù)器邏輯耦合,還會(huì)導(dǎo)致反爬技術(shù)改進(jìn)升級(jí)的麻煩,不能有效的應(yīng)對(duì)新的爬蟲技術(shù)和情況。如果因?yàn)榉磁肋壿嬌?jí)而重新部署服務(wù)器邏輯,又會(huì)提高網(wǎng)站運(yùn)維成本和提高技術(shù)風(fēng)險(xiǎn)。



      技術(shù)實(shí)現(xiàn)要素:

      本發(fā)明的目的在于:本發(fā)明的目的在于提供一種網(wǎng)站服務(wù)器爬蟲識(shí)別方法和裝置,來區(qū)分正常用戶訪問和爬蟲程序訪問,解決網(wǎng)絡(luò)爬蟲程序?qū)σ话憔W(wǎng)站服務(wù)器的數(shù)據(jù)采集和計(jì)算資源占用問題。

      本發(fā)明采用的技術(shù)方案如下:

      一種網(wǎng)站服務(wù)器爬蟲識(shí)別方法,包括以下步驟:

      s1:依據(jù)用戶ip地址對(duì)訪問用戶進(jìn)行標(biāo)記;

      s2:對(duì)用戶訪問請(qǐng)求進(jìn)行劃分,將用戶訪問請(qǐng)求中請(qǐng)求資源、請(qǐng)求域名、子域名、訪問路徑相同的用戶訪問請(qǐng)求歸為相同類型的訪問請(qǐng)求;

      s3:依據(jù)每類訪問請(qǐng)求的資源類型劃分出核心資源訪問請(qǐng)求;

      s4:對(duì)訪問用戶的核心資源訪問請(qǐng)求進(jìn)行連續(xù)性判斷,對(duì)非連續(xù)性訪問判斷為非爬蟲訪問,對(duì)連續(xù)性訪問繼續(xù)進(jìn)行下一步;

      s5:依據(jù)訪問用戶的核心資源訪問請(qǐng)求的內(nèi)容連續(xù)性、訪問持續(xù)時(shí)間、訪問頻度進(jìn)行爬蟲訪問判斷;

      s6:將判斷為爬蟲訪問的用戶進(jìn)行處理。

      進(jìn)一步的,所述核心資源訪問請(qǐng)求劃分方法為:請(qǐng)求資源類型為展示數(shù)據(jù)內(nèi)容的協(xié)議請(qǐng)求為核心資源訪問請(qǐng)求。如請(qǐng)求資源類型為html,xml,json等涉及展示數(shù)據(jù)內(nèi)容的協(xié)議請(qǐng)求為核心資源訪問請(qǐng)求,相應(yīng)的,請(qǐng)求資源類型為css,js的訪問請(qǐng)求,非核心資源訪問請(qǐng)求。

      進(jìn)一步的,所述連續(xù)訪問判斷為:

      設(shè)定連續(xù)訪問閾值,當(dāng)訪問用戶的相鄰兩次核心資源訪問請(qǐng)求的時(shí)間小于連續(xù)訪問閾值時(shí)判定用戶為連續(xù)性訪問。

      進(jìn)一步的,所述內(nèi)容連續(xù)性的爬蟲訪問判斷方法為:

      對(duì)時(shí)間連續(xù)的訪問,依據(jù)當(dāng)前訪問用戶的核心資源訪問請(qǐng)求協(xié)議標(biāo)記的前次核心資源訪問請(qǐng)求地址進(jìn)行判斷,如前次核心資源訪問請(qǐng)求地址為非網(wǎng)站主地址url和非歷史訪問地址url,則判定訪問用戶的行為為爬蟲訪問。

      進(jìn)一步的,所述訪問持續(xù)時(shí)間的爬蟲訪問判斷方法為:

      對(duì)時(shí)間連續(xù)的訪問,依據(jù)訪問用戶的核心資源訪問請(qǐng)求的訪問持續(xù)時(shí)間,設(shè)定持續(xù)訪問閾值,當(dāng)訪問持續(xù)時(shí)間超過持續(xù)訪問閾值時(shí)判定訪問用戶的行為為爬蟲訪問。

      進(jìn)一步的,所述訪問頻度的爬蟲訪問判斷步驟為:

      s11:設(shè)定時(shí)間周期t1,統(tǒng)計(jì)每時(shí)間周期t1相同類型的核心資源訪問請(qǐng)求頻度為:

      f=ncr/t1

      其中,ncr指的是在時(shí)間周期t1內(nèi)時(shí)間連續(xù)的同類型核心資源訪問請(qǐng)求的訪問次數(shù);

      s12:對(duì)用戶每種同類型核心資源訪問請(qǐng)求的連續(xù)請(qǐng)求,獲取其最近n次的訪問頻度值組[f1,f2,f3,…fn],隨機(jī)抽取訪問頻度值中任一值作為基準(zhǔn)值fy;

      s13:依據(jù)fy計(jì)算頻度判定值fs=fy±σ(σ=φfy);其中φ為誤差因子;

      s14:判斷訪問頻度值中除基準(zhǔn)值fy外的其它n-1個(gè)訪問頻度值是否滿足范圍[fy-σ,fy+σ],當(dāng)n-1個(gè)訪問頻度值全部滿足范圍時(shí),通過設(shè)定頻度閾值fz,當(dāng)基準(zhǔn)值fy大于頻度閾值fz時(shí)判定用戶訪問為爬蟲訪問。

      進(jìn)一步的,對(duì)判定有爬蟲訪問的用戶處理方法為:

      依據(jù)網(wǎng)站預(yù)設(shè)策略,可以斷開當(dāng)前用戶連接,并在設(shè)定的禁止訪問時(shí)間段內(nèi)禁止用戶的ip對(duì)該網(wǎng)站的訪問,也可以投遞該訪問給業(yè)務(wù)服務(wù)器,修改協(xié)議頭增加爬蟲標(biāo)記字段,由業(yè)務(wù)服務(wù)器側(cè)處理。

      進(jìn)一步的,所述爬蟲訪問判定的次序?yàn)椋簝?nèi)容連續(xù)性判定、訪問頻度判定、訪問持續(xù)時(shí)間判定。

      一種網(wǎng)站服務(wù)器爬蟲識(shí)別的裝置,包括:

      來訪用戶標(biāo)記模塊:對(duì)每個(gè)來訪用戶,根據(jù)其ip地址進(jìn)行唯一的標(biāo)記;

      用戶參數(shù)采集統(tǒng)計(jì)模塊:對(duì)每個(gè)用戶每個(gè)同類型訪問標(biāo)記其訪問時(shí)間和記錄訪問請(qǐng)求頭,進(jìn)而標(biāo)記核心訪問內(nèi)容、時(shí)間、頻度;

      爬蟲用戶識(shí)別模塊:依據(jù)用戶參數(shù)采集統(tǒng)計(jì)模塊的數(shù)據(jù)對(duì)訪問用戶的核心資源訪問請(qǐng)求的請(qǐng)求時(shí)間連續(xù)性、請(qǐng)求內(nèi)容連續(xù)性、訪問持續(xù)時(shí)間、訪問頻度進(jìn)行爬蟲訪問判斷;

      爬蟲用戶處理模塊:對(duì)認(rèn)定為爬蟲程序的訪問按網(wǎng)站預(yù)設(shè)策略進(jìn)行處理,包括:斷開訪問鏈接并禁止在設(shè)定時(shí)間內(nèi)訪問或傳遞給業(yè)務(wù)服務(wù)器,修改協(xié)議頭增加爬蟲標(biāo)記字段,由網(wǎng)站服務(wù)器側(cè)處理。

      進(jìn)一步的,所述裝置前置于網(wǎng)站服務(wù)器端。

      綜上所述,由于采用了上述技術(shù)方案,本發(fā)明的有益效果是:

      1、能夠有效識(shí)別網(wǎng)絡(luò)爬蟲訪問行為,并根據(jù)用戶設(shè)定策略處理,防止爬蟲訪問耗費(fèi)網(wǎng)站資源,對(duì)網(wǎng)站系統(tǒng)接入能力造成影響。

      2、通過多種手段有效識(shí)別用戶的爬蟲行為,實(shí)現(xiàn)成本低,與網(wǎng)站業(yè)務(wù)耦合度較低,可移植性性強(qiáng)。

      3、獨(dú)立于網(wǎng)站業(yè)務(wù)服務(wù)器邏輯,易于升級(jí)更新,運(yùn)維成本和技術(shù)風(fēng)險(xiǎn)較低。

      4、對(duì)判別為爬蟲的請(qǐng)求處理靈活,可以根據(jù)根據(jù)業(yè)務(wù)服務(wù)器需求調(diào)整配置。

      附圖說明

      圖1為本發(fā)明提供的算法過程流程圖。

      圖2為本發(fā)明提供的裝置原理圖。

      圖3為本發(fā)明提供的算法過程流程實(shí)施例圖。

      圖4為本發(fā)明提供的裝置安裝原理圖。

      具體實(shí)施方式

      本說明書中公開的所有特征,除了互相排斥的特征和/或步驟以外,均可以以任何方式組合。

      下面結(jié)合附圖對(duì)本發(fā)明作詳細(xì)說明。

      如圖3所示,本發(fā)明的一種實(shí)施流程為:

      s10.用來訪用戶ip地址標(biāo)記來訪用戶c1;

      s11.根據(jù)用戶請(qǐng)求完整路徑、請(qǐng)求資源類型,區(qū)分同類型請(qǐng)求訪問;

      s12.根據(jù)訪問類型是否頁(yè)面或數(shù)據(jù),分離出核心訪問請(qǐng)求cr1,記錄其來訪時(shí)戳tr1;

      s13.判斷同類型核心訪問連續(xù)性:計(jì)算兩個(gè)連續(xù)訪問時(shí)間間隔t=tr2-tr1,若t小于給定間隔st2,認(rèn)定為連續(xù)訪問,繼續(xù)下一步,否則直接判定為非爬蟲訪問,直接透?jìng)髡?qǐng)求協(xié)議;

      s14.對(duì)任意一種連續(xù)的核心訪問,訪問請(qǐng)求refer參數(shù)異常,則判斷為爬蟲訪問;refer參數(shù)正常時(shí)繼續(xù)下一步;

      s15.計(jì)算每隔給定時(shí)間t1,任意一種相同類型的連續(xù)的核心訪問cr1的訪問頻率f;其中,

      f=ncr/t1;

      s16.對(duì)任意一種相同類型的連續(xù)的核心訪問,如果訪問頻率穩(wěn)定,且大于給定值sf1,則判斷為爬蟲訪問,否則直接下一步;其中訪問頻率穩(wěn)定判定方法為:

      對(duì)用戶每種同類型核心資源訪問請(qǐng)求的連續(xù)請(qǐng)求,獲取其最近n次的訪問頻度值組[f1,f2,f3,…fn],隨機(jī)抽取訪問頻度值中任一值作為基準(zhǔn)值fy;依據(jù)fy計(jì)算頻度判定值fs=fy±σ(σ=φfy);其中φ為誤差因子;判斷訪問頻度值中除基準(zhǔn)值fy外的其它n-1個(gè)訪問頻度值是否滿足范圍[fy-σ,fy+σ],當(dāng)n-1個(gè)訪問頻度值全部滿足范圍時(shí),訪問頻率穩(wěn)定;

      s17.對(duì)各種核心訪問,如果其訪問持續(xù)的時(shí)間超過指定值st2,則判斷為爬蟲訪問;判定為非爬蟲訪問直接透?jìng)髡?qǐng)求協(xié)議。

      對(duì)爬蟲訪問,按照設(shè)置規(guī)則進(jìn)行處理,包括:依據(jù)斷開當(dāng)前用戶連接,可以斷開當(dāng)前用戶連接,并在設(shè)定的禁止訪問時(shí)間段內(nèi)禁止用戶的ip對(duì)該網(wǎng)站的訪問,也可以投遞該訪問給業(yè)務(wù)服務(wù)器,修改協(xié)議頭增加爬蟲標(biāo)記字段,由業(yè)務(wù)服務(wù)器側(cè)處理。

      如圖2所示,一種網(wǎng)站服務(wù)器爬蟲識(shí)別的裝置,其特征在于,包括:

      來訪用戶標(biāo)記模塊:對(duì)每個(gè)來訪用戶,根據(jù)其ip地址進(jìn)行唯一的標(biāo)記;

      用戶參數(shù)采集統(tǒng)計(jì)模塊:對(duì)每個(gè)用戶每個(gè)同類型訪問標(biāo)記其訪問時(shí)間和記錄訪問請(qǐng)求頭,進(jìn)而標(biāo)記核心訪問內(nèi)容、時(shí)間、頻度;

      爬蟲用戶識(shí)別模塊:依據(jù)用戶參數(shù)采集統(tǒng)計(jì)模塊的數(shù)據(jù)對(duì)訪問用戶的核心資源訪問請(qǐng)求的請(qǐng)求時(shí)間連續(xù)性、請(qǐng)求內(nèi)容連續(xù)性、訪問持續(xù)時(shí)間、訪問頻度進(jìn)行爬蟲訪問判斷;

      爬蟲用戶處理模塊:對(duì)認(rèn)定為爬蟲程序的訪問按網(wǎng)站預(yù)設(shè)策略進(jìn)行處理,包括:斷開訪問鏈接并禁止在設(shè)定時(shí)間內(nèi)訪問或傳遞給業(yè)務(wù)服務(wù)器,修改協(xié)議頭增加爬蟲標(biāo)記字段,由網(wǎng)站服務(wù)器側(cè)處理。

      如圖4所示,所述裝置前置于網(wǎng)站服務(wù)器端。

      當(dāng)前第1頁(yè)1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
      1