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

網站反爬蟲策略的分析與研究

2019-12-10 09:48:22伏康杜振鵬
電腦知識與技術 2019年28期
關鍵詞:大數據

伏康 杜振鵬

摘要:隨著大數據時代的來臨,大數據在日常生活中的應用顯得尤為重要。如何便捷、快速地獲取數據將成為提高競爭力的重要手段,而通過網絡爬蟲這一新興技術能夠非常高效的獲取網絡中的數據。但是如果不對爬蟲進行控制,爬蟲也會對網站造成巨大危害。為了減少網絡爬蟲對于網站的危害,詳細闡述了網絡爬蟲的工作原理、種類以及URL的搜索策略,針對某些網站的”反爬”措施,提出相應的提出幾種反爬策略。從而減輕了網站服務器壓力,保護了數據,防止數據的大量流失。

關鍵詞:大數據;網絡爬蟲;爬蟲;反爬措施;反爬策略

中圖分類號:TP393? ? ? ? 文獻標識碼:A

文章編號:1009-3044(2019)28-0028-03

Abstract:With the advent of the era of big data, big data is particularly important in daily life. How to get data conveniently and quickly becomes an important means to improve competitiveness, and the new technology of web crawler can obtain data in the network efficiently. If the crawler is not controlled, the crawler will also cause great harm to the website. In order to reduce the harm of web crawlers to websites, this paper elaborates the working principle, types and URL search strategies of web crawlers in detail, and proposes several anti-crawling strategies for some websites. Thus, the pressure of the website server is reduced, the data is protected, and the massive loss of data is prevented.

Key words:big data; cyber crawler; spider; anti-crawling strategies; anti-spider technology

隨著大數據時代的來臨,在信息與知識爆炸增長的時代,為了分析預測人或者其他事物的客觀規律以及行為預測和分析,需要從網絡中獲取大量的數據進行后續分析。人們為了更快、更準確地獲取網絡中個各種各樣的數據,會寫各種各樣的爬蟲來直接爬取網站數據。大量的不加限制的網絡爬蟲會對網站服務器造成巨大壓力,嚴重者會造成服務器宕機,從而降低其他正常用戶的使用體驗,并可能會造成其他大量用戶的潛在流失,給網站經營者造成損失。為了緩解爬蟲對網站造成的壓力,本文在對網絡爬蟲原理分析的基礎上,針對不同爬蟲抓取策略提出一些有效的“反爬”策略。

1 爬蟲總述

1.1 爬蟲簡介

網絡爬蟲是抓取網頁信息的一種程序,現階段多種編程語言都可實現,包括現在主流的搜索網站百度、Google等都屬于爬蟲范疇,只不過百度、Google等是對于整個Internet進行爬取,而我們普通的爬蟲是對特定網站的特定信息進行爬取。

1.2 爬蟲原理

爬蟲可以通過構造Url以及后綴參數對網站發起Request請求,當網站接收到Request請求之后將Servlet處理之后結果嵌入HTML中,之后將HTML代碼返回到爬蟲端,將得到的結果進行解析、提取有效數據、將有效數據清洗、數據存儲。

1.3 爬蟲組成

基本爬蟲由五部分組成:Url隊列(UrlQueue)、調度器(Scheduler)、下載器(Downloader)、解析器(Parser)、存儲器(Storage)。Url隊列是通過研究網站結構,生成待爬取的Url隊列。調度器(Scheduler)是將Url調度到下載器(Downloader)中進行下載,并且記錄服務器返回的狀態碼(state_code),將下載成功的Url從隊列中剔除掉,下載失敗的Url重新調回Url隊列中,等之后再次進行下載。下載器(Downloader)則是通過發起Request請求,將服務器返回的數據傳到爬蟲端。解析器(Parser)則是對數據進行后續解析,從HTML標簽中抽取研究所需要的數據。存儲器則是將處理完的數據進行清洗、存儲。

1.4 爬蟲抓取策略

在爬蟲爬取數據過程中,待抓取的URL隊列也是非常重要的一部分,對于Url如何抓取也是可以深入研究的一部分。抓取策略即為一個網站內數據如何去抓取,即抓取的先后順序,其中牽扯到程序的時間復雜度與空間復雜度,對于數據量比較小可以忽略時間復雜度與空間復雜度,但對于GB級數據或者TB級數據的抓取,必須去考慮算法的時間、空間復雜度問題。常見的爬取策略有:

深度優先策略。此策略主要運用的思想主要是,爬蟲從起始頁開始爬,根據網頁對鏈接進行一個個的各種,處理完一整條線路之后再對下一個起始頁進行爬取。

廣度優先策略。將新下載網頁中發現的連接置入隊列的末尾,當橫向鏈接全部爬取完畢之后,再對下一層次的連接進行爬取。

反向鏈接策略。該策略指的是一個網頁被其他網頁鏈接指向的數量,即其他網站鏈接對于該網站鏈接的推薦程度,但是往往由于網站內廣告流量主會對爬蟲產生錯誤引導,故該策略對實際參考意義上并不是很大。

大站優先策略。對網站頁面進行分類,對于鏈接內可下載的鏈接數比較多時,提高該網頁鏈接的優先值,對該網頁進行優先爬取下載。

Partial PageRank策略。該策略借鑒了PageRank算法思想,對于已經下載的網頁連同待抓取的Url隊列中的Url形成網頁集合,之后隨每個頁面計算PageRank值,之后按照PageRank值進行從大到小排列,并且按照順序進行抓取頁面。之后我們設置一個k值,每抓取隊列中k個頁面之后,對剩余頁面重新計算PageRank值,重新排列,按照順序抓取。

2 網絡爬蟲常用的偽裝機制

了解爬蟲常用的偽裝機制之后,就能對一些基礎爬蟲進行識別,從而能夠準確地過濾掉部分爬蟲,減輕濫用網絡爬蟲對于服務器產生的負擔。一般的網絡爬蟲使用的偽裝機制有:

1)爬蟲請求時設置Header:在Headers中存在的一些屬性例如:host、Referer、user-agent、cookie等,一般的爬蟲會設置一些假的user-agent來躲過檢測。一般可以結合referer+user-agent來識別,Referer字段會指明這個頁面是從哪里跳轉過來。

2)設置定時休眠:一般爬蟲在爬取的時候一般會采用設置爬蟲休眠來模擬人為登錄狀態??梢杂眠^客戶端聯入服務器的時間分析出是否爬蟲,若訪問時間非常規律,則證明其為網絡爬蟲。

3)使用普通代理服務器:爬蟲為了躲避單一ip限制,會使用代理服務器進行訪問,使用普通代理服務器比較容易被識別,可以通過用戶端所發送的環境變量REMOTE_ADDR、HTTP_VIA、HTTP_X_FORWARDED_FOR三個字段檢驗出來。非爬蟲用戶后兩個變量會沒有數值,而普通代理服務器第三個變量會透露出爬蟲真正IP。

4)使用高匿代理服務器:使用此類服務器和普通代理服務器功能相類似,但是三個變量值全為代理服務器IP。能隱藏爬蟲真實IP,但會向服務器透露是使用代理服務器訪問。

5)偽裝網站Cookie:該類爬蟲會獲取網站發送給客戶端的Cookie值,并將Cookie加入請求字段,模仿用戶登錄獲取數據。用戶初次訪問網頁時生成一個隨機Cookie,如果用戶之后多次訪問都不攜帶Cookie,則可判定為爬蟲。

3 “反爬”策略

3.1 妥協式策略

設置Robots.txt協議。在網站根目錄下放入Robots.txt文件,來告訴一些規范的爬蟲使用者哪些頁面是可以爬取,哪些頁面是不準使用爬蟲爬取的,在Scrapy框架中默認是遵守Robots.txt協議。通過Robots協議的規范可以減輕一小部分爬蟲對于服務器的負擔。

設置Sitemap.xml靜態文件。將整個網站的所有鏈接以及其他元數據(上次更新時間、更改頻率以及相對于網站上其他網址的重要程度等),通過該靜態網頁可以減少爬蟲對于網站整體動態網頁的爬取,從而能夠減輕服務器壓力,屬于妥協式策略中比較有效的方法。

3.2 非妥協式策略

1)限制IP單位時間內訪問次數。通過分析系統日志,對于一段時間內單一IP突然產生大量請求基本可以判別為爬蟲。將其IP放入封禁池中,封禁一段時間之后再給予解封,使其能再次合理訪問服務器。

2)設置較為復雜的驗證碼圖片、滑動拼圖。對于突然產生大量請求的客戶端進行人機驗證,采用隔時驗證的手段。并且防止爬蟲使用ORC自主識別平臺,要采用較為復雜,但用戶能夠準確識別的驗證碼,例如:物品識別、問題選取、計算結果等方法。也可以使用滑塊拼圖的手段來進行人機驗證。

3)通過JS腳本防爬蟲。網站大量使用Ajax技術對網站數據進行異步加載,爬蟲直接訪問鏈接時異步加載的數據并不會返回到HTML中,使爬蟲無法爬取到重要信息。

4)Css反爬蟲機制。該反爬機制是比較先進的反爬技術,解密起來比較復雜。原理是通過加載SVG資源的方法,對頁面的部分文字和數字進行加密。運用起來主要是通過css資源文件定義樣式,通過樣式的坐標值去SVG文件中定位最終的文字內容。例如使用該項技術的大眾點評公司。

5)字體反爬。此項技術也屬于比較常見的反爬技術,網站采用了自定義的文體文件(即新式的.ttf字體文件),在瀏覽器上正常顯示,但是如果使用爬蟲爬取下來之后,數據會成為亂碼或者被替換為其他字符

6)部分重要數據使用圖片代替。例如一些數字數據比較重要,可以使用相應的數字圖片去代替相應的文本。

4 研究結論

現階段比較流行的爬蟲無非普通的發起Request請求的簡單爬蟲、多線程處理數據結構化的多線程爬蟲,以及類似基于自動化測試框架的Selenium、PhantonJS爬蟲等。以上都可以通過”反爬”措施來對爬蟲進行封禁,唯一識別有些難度的就是基于WebDriver的自動化測試框架的Selenium、PhantonJS爬蟲,但也并不是完全沒有辦法去識別以上爬蟲。在使用Selenium時,會暴露出webdriver屬性,可以通過HTML中JS來識別webdriver屬性,從而封禁相應的爬蟲。而對于比較簡單的爬蟲即使經過偽裝還是比較容易被識別,從來網站服務器端可以采用相應的技術來限制此類爬蟲對于資源的消耗。爬蟲“突破”反爬措施的能力在不斷地提升,這也迫使我們不斷研究最新的爬蟲,反向研究相應的”反爬”措施,從而減少網站珍貴數據的流失。并且與傳統的”反爬”技術相比較,本研究所發現的”反爬”技術更加完善,對于爬蟲更加有針對性,能夠更加有效地防止爬蟲的濫用對服務器資源的消耗。

5 結語

本文深入探究網絡爬蟲基本原理,從原理出發對網絡爬蟲進行封禁,并且提出比較主流的“反爬”措施,能夠減少不規范爬蟲對網站的爬取,減輕服務器壓力,減少了寶貴數據的流失。但是隨著互聯網的迅速發展,各種爬蟲性能以及偽裝能力也會不斷地提高,作為網站運營方也需要不斷學習研究,針對層出不窮的爬蟲新技術提出更加先進完美的反爬措施。

參考文獻:

[1] 胡俊蕭,陳國偉.網絡爬蟲反爬策略研究[J].科技創新與應用,2019(5):137-139.

[2] 陳利婷.大數據時代的反爬技術[J].電腦與信息技術,2016(24)60-62.

[3] 劉清.網絡爬蟲針對”反爬”網站的爬取策略分析[J].信息與電腦,2019(3):23-25.

[4] 鄒科文,李達,鄧婷敏,等.網絡爬蟲針對”反爬”網站的爬取策略研究[J].電腦知識與技術,2016(12):61-64.

【通聯編輯:代影】

猜你喜歡
大數據
基于在線教育的大數據研究
中國市場(2016年36期)2016-10-19 04:41:16
“互聯網+”農產品物流業的大數據策略研究
中國市場(2016年36期)2016-10-19 03:31:48
基于大數據的小微電商授信評估研究
中國市場(2016年35期)2016-10-19 01:30:59
大數據時代新聞的新變化探究
商(2016年27期)2016-10-17 06:26:00
淺談大數據在出版業的應用
今傳媒(2016年9期)2016-10-15 23:35:12
“互聯網+”對傳統圖書出版的影響和推動作用
今傳媒(2016年9期)2016-10-15 22:09:11
大數據環境下基于移動客戶端的傳統媒體轉型思路
新聞世界(2016年10期)2016-10-11 20:13:53
基于大數據背景下的智慧城市建設研究
科技視界(2016年20期)2016-09-29 10:53:22
數據+輿情:南方報業創新轉型提高服務能力的探索
中國記者(2016年6期)2016-08-26 12:36:20
主站蜘蛛池模板: 中国国语毛片免费观看视频| 久久狠狠色噜噜狠狠狠狠97视色| 91精品啪在线观看国产91九色| 毛片免费高清免费| 国产福利2021最新在线观看| 日韩精品资源| 亚洲欧洲日产国产无码AV| 玩两个丰满老熟女久久网| 无码中字出轨中文人妻中文中| 精品久久777| 国产精品伦视频观看免费| 国产美女精品一区二区| 天堂成人在线| 国产视频一区二区在线观看| 国产96在线 | 日韩视频福利| 亚洲综合九九| 国产精品露脸视频| 日韩中文精品亚洲第三区| 国产精品无码久久久久久| 99re这里只有国产中文精品国产精品| 91美女视频在线观看| 国产综合网站| 人妻无码一区二区视频| 欧美精品1区| 国产9191精品免费观看| 亚洲精品午夜天堂网页| 99精品视频在线观看免费播放| 久久成人国产精品免费软件| 麻豆国产精品一二三在线观看| 国产精品漂亮美女在线观看| 直接黄91麻豆网站| a毛片在线播放| 高清国产在线| 国产精品yjizz视频网一二区| 国产特一级毛片| 亚洲婷婷在线视频| 久久久久亚洲av成人网人人软件| 免费Aⅴ片在线观看蜜芽Tⅴ | 91久久精品国产| 国产免费黄| 久久夜色精品| 五月天在线网站| 国产永久免费视频m3u8| 亚洲欧洲一区二区三区| 婷婷亚洲最大| 日韩精品一区二区三区大桥未久| 九色综合伊人久久富二代| 精品亚洲国产成人AV| 久久人妻xunleige无码| 免费观看国产小粉嫩喷水| 国产一二视频| 中文字幕永久在线看| 亚洲欧美色中文字幕| 欧美激情第一欧美在线| 19国产精品麻豆免费观看| 无码免费试看| 天天综合天天综合| 亚洲精品动漫在线观看| 欧美精品高清| 国产经典在线观看一区| 视频国产精品丝袜第一页| 在线国产91| 亚洲精品欧美日韩在线| 成年午夜精品久久精品| 97色婷婷成人综合在线观看| 九月婷婷亚洲综合在线| 亚洲妓女综合网995久久 | 中国特黄美女一级视频| 亚洲黄色高清| 亚洲国产日韩欧美在线| 国产XXXX做受性欧美88| 欧美性猛交一区二区三区| 国产欧美精品一区二区 | 无码内射中文字幕岛国片| 日韩精品无码免费专网站| 欧美亚洲一区二区三区在线| 2021无码专区人妻系列日韩| 国产成人精品视频一区二区电影| 91久久夜色精品国产网站| 国产精品久久久久久久伊一| 日韩精品一区二区三区中文无码|