【技術實現步驟摘要】
本申請實施例涉及網絡安全,特別涉及一種爬蟲檢測方法、電子設備及存儲介質。
技術介紹
1、隨著互聯網數據的爆炸式增長,數據成為了新時代的“石油”。為了更方便地從互聯網中收集數據,提出了各種各樣的爬蟲實現方案,其中,爬蟲是指按照一定的規則,自動地從互聯網中抓取內容的技術。而爬蟲又給互聯網帶來一些訪問安全問題,例如,服務器負載過重、數據被競爭對手竊取、濫用或歪曲、用戶隱私泄漏等。因此,各種各樣的反爬蟲方案也被提出來了,例如:
2、基于請求分析實現的反爬蟲方案,即通過分析客戶端發送的請求特征來識別爬蟲,包括:用戶代理檢測、ip地址和頻率限制、傳輸層安全性(transport?layer?security,tls)指紋識別等。基于內容和交互挑戰的技術,即通過增加人機交互的復雜度來阻止或延緩爬蟲,包括:圖形驗證碼、滑塊驗證碼等。基于架構和協議層級的技術,即通過使用web技術和通信協議的特性來增加爬蟲難度,包括:隱含字段和混淆技術,動態生成或改變網站內容和結構,使得爬蟲難以預測和抓取。基于客戶端行為分析的技術,即基于行為的分析和瀏覽器指紋識別,包括:監測鼠標點擊、滾動、移動等行為是否符合人類正常行為模式,通過收集各種瀏覽器的屬性信息組合成指紋信息來識別客戶端等。
3、然而,上述典型的反爬蟲方案也逐漸產生了對應的解決方案。例如:通過代理池來繞過基于ip地址和頻率限制的策略,通過圖像識別技術來自動輸入圖形驗證碼等;一些先進的爬蟲工具能夠以完全符合人類瀏覽網頁的思維方式,模擬人的操作行為,并且通過內置真實常見瀏覽器的屬性信息
技術實現思路
1、本申請實施例提供了一種爬蟲檢測方法、電子設備及存儲介質,至少有利于更準確地對爬蟲進行檢測,提高了訪問安全性。
2、根據本申請一些實施例,本申請實施例第一方面提供了一種爬蟲檢測方法,應用于服務器,所述方法包括:接收客戶端發送的第一訪問請求;向所述客戶端發送第一響應數據,其中,所述第一響應數據攜帶預設的腳本;接收所述客戶端發送的第二訪問請求,其中,所述第二訪問請求攜帶所述客戶端通過運行所述預設的腳本獲取的用戶界面布局參數;根據所述用戶界面布局參數進行爬蟲檢測。
3、在一些實施例中,所述用戶界面布局參數包括以下參數中的至少一項:窗口寬度、視口寬度、窗口高度、視口高度。
4、在一些實施例中,所述用戶界面布局參數包括以下至少一組:所述窗口寬度和所述視口寬度、所述窗口高度和所述視口高度;所述根據所述用戶界面布局參數進行爬蟲檢測,包括:根據所述窗口寬度和所述視口寬度生成第一特征參數,和/或,根據所述窗口高度和所述視口高度生成第二特征參數;根據所述第一特征參數和/或第二特征參數,進行爬蟲檢測。
5、在一些實施例中,所述第一特征參數通過如下表達式確定:y1=x1/x2,其中,y1為所述第一特征參數,x1為窗口寬度,x2為視口寬度;和/或,所述第二特征參數通過如下表達式確定:y2=x3/x4,其中,y2為所述第二特征參數,x3為窗口高度,x4為視口高度。
6、在一些實施例中,所述根據所述用戶界面布局參數進行爬蟲檢測,包括:根據所述用戶界面布局參數和訓練好的機器學習模型,生成概率矩陣,其中,所述概率矩陣用于訪問行為為爬蟲行為的概率和/或訪問行為為正常的概率;根據所述概率矩陣進行爬蟲檢測。
7、在一些實施例中,所述機器學習模型為支持向量機模型。
8、在一些實施例中,所述根據所述概率矩陣進行爬蟲檢測,包括:根據所述概率矩陣和參考信息進行爬蟲檢測,其中,所述參考信息包括以下信息的至少一項:用戶行為、客戶端信息。
9、在一些實施例中,所述方法還包括:在檢測通過的情況下,向所述客戶端發送第二響應數據;和/或,在檢測未通過的情況下,攔截所述第二訪問請求。
10、在一些實施例中,所述預設的腳本位于所述第一響應數據中的網頁數據的<header>標簽中,和/或,所述用戶界面布局參數位于cookie中。
11、根據本申請一些實施例,本申請實施例第二方面還提供了一種爬蟲檢測方法,應用于客戶端,所述方法包括:向服務器發送第一訪問請求;接收所述服務器返回的第一響應數據,其中,所述第一響應數據攜帶預設的腳本;根據所述第一響應數據呈現網頁頁面,并運行所述預設的腳本,以采集所述網頁頁面對應的用戶界面布局參數;向所述服務器發送第二訪問請求,所述第二訪問請求攜帶所述用戶界面布局參數。
12、根據本申請一些實施例,本申請實施例第三方面還提供了一種電子設備,包括:至少一個處理器;以及,與所述至少一個處理器通信連接的存儲器;其中,所述存儲器存儲有可被所述至少一個處理器執行的指令,所述指令被所述至少一個處理器執行,以使所述至少一個處理器能夠執行如本申請第一方面提供的任一爬蟲檢測方法,或者,執行如本申請第二方面提供的任一爬蟲檢測方法。
13、根據本申請一些實施例,本申請實施例第四方面還提供了一種計算機可讀存儲介質,存儲有計算機程序,所述計算機程序被處理器執行時實現如本申請第一方面提供的任一爬蟲檢測方法,或者,實現如本申請第二方面提供的任一爬蟲檢測方法。
14、本申請實施例中提供的技術方案,至少具有以下優點:
15、在對客戶端發起的第一訪問請求進行響應時,服務器返回的第一響應數據中攜帶有預設的腳本,這樣,客戶端在接收到第一響應數據之后,將會通過運行其中攜帶的預設的腳本實現對用戶界面布局參數的獲取,從而客戶端將支持發送攜帶該用戶界面布局參數的第二訪問請求,使得服務器就能夠通過該用戶界面布局參數進行爬蟲檢測。也就是說,提供了一種新的通過用戶界面布局參數進行爬蟲檢測并進行攔截的訪問方案,能夠彌補現有的反爬蟲方案無法對基于內置瀏覽器內核的爬蟲進行準確檢測的缺陷,使得能夠更準確地對爬蟲進行檢測,避免了爬蟲帶來的問題,提高了訪問的安全性。
本文檔來自技高網...【技術保護點】
1.一種爬蟲檢測方法,其特征在于,應用于服務器,所述方法包括:
2.根據權利要求1所述的爬蟲檢測方法,其特征在于,所述用戶界面布局參數包括以下參數中的至少一項:窗口寬度、視口寬度、窗口高度、視口高度。
3.根據權利要求2所述的爬蟲檢測方法,其特征在于,所述用戶界面布局參數包括以下至少一組:所述窗口寬度和所述視口寬度、所述窗口高度和所述視口高度;
4.根據權利要求3所述的爬蟲檢測方法,其特征在于,所述第一特征參數通過如下表達式確定:
5.根據權利要求1至4中任一項所述的爬蟲檢測方法,其特征在于,所述根據所述用戶界面布局參數進行爬蟲檢測,包括:
6.根據權利要求5所述的爬蟲檢測方法,其特征在于,所述根據所述概率矩陣進行爬蟲檢測,包括:
7.根據權利要求1至4中任一項所述的爬蟲檢測方法,其特征在于,所述方法還包括:
8.根據權利要求1至4中任一項所述的爬蟲檢測方法,其特征在于,所述預設的腳本位于所述第一響應數據中的網頁數據的<header>標簽中,和/或,所述用戶界面布局參數位于cookie
9.一種爬蟲檢測方法,其特征在于,應用于客戶端,所述方法包括:
10.一種電子設備,其特征在于,包括:
11.一種計算機可讀存儲介質,存儲有計算機程序,其特征在于,所述計算機程序被處理器執行時實現如權利要求1至8中任一項所述的爬蟲檢測方法,或者,實現如權利要求9所述的爬蟲檢測方法。
...【技術特征摘要】
1.一種爬蟲檢測方法,其特征在于,應用于服務器,所述方法包括:
2.根據權利要求1所述的爬蟲檢測方法,其特征在于,所述用戶界面布局參數包括以下參數中的至少一項:窗口寬度、視口寬度、窗口高度、視口高度。
3.根據權利要求2所述的爬蟲檢測方法,其特征在于,所述用戶界面布局參數包括以下至少一組:所述窗口寬度和所述視口寬度、所述窗口高度和所述視口高度;
4.根據權利要求3所述的爬蟲檢測方法,其特征在于,所述第一特征參數通過如下表達式確定:
5.根據權利要求1至4中任一項所述的爬蟲檢測方法,其特征在于,所述根據所述用戶界面布局參數進行爬蟲檢測,包括:
6.根據權利要求5所述的爬蟲檢測方法,其特征在于,所...
【專利技術屬性】
技術研發人員:王龍,焦蕊,呂士表,
申請(專利權)人:網宿科技股份有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。