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

基于SCRAPY框架的網(wǎng)絡(luò)爬蟲封鎖技術(shù)破解研究

2020-04-27 08:45:40陳輝
科技視界 2020年6期

陳輝

摘 要

本文闡述了網(wǎng)絡(luò)爬蟲及封鎖網(wǎng)絡(luò)爬蟲最常用的四種技術(shù):時間間隔封鎖,Cookie封鎖,User-Agent封鎖,IP封鎖;分析了上述封鎖技術(shù)的基本原理,提出了針對上述封鎖技術(shù)的破解方法,并給出了基于Scrapy框架的破解封鎖實現(xiàn)代碼。

關(guān)鍵詞

Scrapy;網(wǎng)絡(luò)爬蟲;時間間隔封鎖;Cookie封鎖;User-Agent封鎖;IP封鎖

中圖分類號: TP393.092;TP391.3 ? ? ?文獻(xiàn)標(biāo)識碼: A

DOI:10.19694/j.cnki.issn2095-2457 . 2020 . 06 . 82

0 引言

網(wǎng)絡(luò)爬蟲,即網(wǎng)絡(luò)機器人,是按照一定的規(guī)則,自動抓取互聯(lián)網(wǎng)信息的程序。在各種應(yīng)用場景中,通過應(yīng)用網(wǎng)絡(luò)爬蟲技術(shù),網(wǎng)絡(luò)機器人可以在網(wǎng)站上自動獲取相關(guān)的專業(yè)數(shù)據(jù),從而實現(xiàn)快速、準(zhǔn)確、完整地獲取海量數(shù)據(jù),為正確做出各種決策提供數(shù)據(jù)支持。有關(guān)調(diào)查研究證明,網(wǎng)絡(luò)上60%的訪問量都來自網(wǎng)絡(luò)爬蟲[1]。對于網(wǎng)站方,網(wǎng)絡(luò)爬蟲占用其過多的資源,并且其未能從爬蟲的訪問中受益,因此網(wǎng)站方采取多種技術(shù)措施拒絕網(wǎng)絡(luò)爬蟲的訪問,即封鎖網(wǎng)絡(luò)爬蟲。

當(dāng)前,封鎖網(wǎng)絡(luò)爬蟲的技術(shù)主要有[2]:時間間隔封鎖,Cookie封鎖,User-Agent封鎖,IP封鎖等。時間間隔封鎖:通過兩次網(wǎng)頁請求的時間間隔判斷訪問是否由網(wǎng)絡(luò)爬蟲引發(fā),當(dāng)時間間隔<0.1秒時,可判斷為網(wǎng)絡(luò)爬蟲,從而拒絕其訪問;Cookie封鎖:網(wǎng)站可通過Cookie來確定用戶身份,當(dāng)一連續(xù)網(wǎng)頁請求來自同一Cookie時,此時可判斷訪問由網(wǎng)絡(luò)爬蟲引發(fā),從而拒絕其訪問;User-Agent封鎖:User-Agent是瀏覽器的身份標(biāo)識,通過User-Agent可確定瀏覽器的類型,網(wǎng)站可將頻繁提交請求的User-Agent作為爬蟲標(biāo)志,將其列入黑名單;IP封鎖:同一IP短時間連續(xù)訪問同一站點,如訪問數(shù)量過大可以判斷由網(wǎng)絡(luò)爬蟲引發(fā),從而拒絕其訪問。以上為封鎖網(wǎng)絡(luò)爬蟲最常用的4種技術(shù),破解上述封鎖技術(shù)是本文主要解決的問題。本文以網(wǎng)絡(luò)爬蟲Scrapy框架為基礎(chǔ),給出以上4種封鎖技術(shù)的破解方法及實現(xiàn)代碼。

1 破解時間間隔封鎖

網(wǎng)站通過兩次網(wǎng)頁請求的時間間隔判斷訪問是否由網(wǎng)絡(luò)爬蟲引發(fā),當(dāng)時間間隔<0.1秒時,可判斷為網(wǎng)絡(luò)爬蟲,從而拒絕其訪問;因此,可將兩次請求的時間間隔放大,從而模擬人訪問網(wǎng)頁的速度,達(dá)到破解時間間隔的限制。

在Scrapy框架中,兩次網(wǎng)頁請求的時間間隔配置為DOWNLOAD_DELAY。因此放大時間間隔的實現(xiàn)代碼為,在settings.py中加入代碼。

DOWN_DOWNLOAD = 5

2 破解Cookie封鎖

網(wǎng)站可通過Cookie來確定用戶身份,當(dāng)在同一連續(xù)時間段中,多個請求由同一Cookie的用戶發(fā)起,則可判斷為網(wǎng)絡(luò)爬蟲,從而拒絕其訪問;因此,可將Cookie禁用,從而網(wǎng)站方無法判斷是否為同一用戶,以達(dá)到破解Cookie封鎖。

在Scrapy框架中,啟用禁用Cookie的配置為COOKIES_ENABLED。因此放大時間間隔的實現(xiàn)代碼為,在settings.py中加入代碼。

COOKIE_ENABLED = False

3 破解User-Agent封鎖

網(wǎng)站可通過User-Agent來確定瀏覽器的類型,當(dāng)在同一連續(xù)時間段中,多個請求由同一User-Agent的瀏覽器發(fā)起,則可判斷為網(wǎng)絡(luò)爬蟲,從而拒絕其訪問;因此,網(wǎng)絡(luò)爬蟲可以準(zhǔn)備多個User-Agent,發(fā)出請求時隨機選一個User-Agent使用,以達(dá)到破解User-Agent封鎖。

在Scrapy框架中,為了實現(xiàn)破解User-Agent封鎖,需要在settings.py的同級目錄創(chuàng)建middlewares模塊;在模塊中,創(chuàng)建資源文件resource.py和中間件文件customUserAgent.py。resource.py用于存放多個User-Agent;customUserAgent.py用于隨機調(diào)用不同的User-Agent。

資源文件resource.py,將多個瀏覽器的User-Agent放在列表中,具體實現(xiàn)如下。

UserAgents=[ “Mozilla/4.0 ?(compatible; MSIE 6.0; Windows NT 5.1; SV1; Acoo Browser; .NET CLR 1.1.4322; .NET CLR 2.0.50727)”,

“Mozilla/4.0 ?(compatible; MSIE 7.0; Windows NT 6.0; Acoo Browser; SLCC1; .NET CLR 2.0.50727; Media Center PC 5.0)”,

“Mozilla/4.0 ?(compatible; MSIE 7.0; AOL9.5; AOL Build 4337.35; ?Windows NT 5.1; .NET CLR 1.1.4322)”,

“Mozilla/5.0 ?(Windows; U; ?MSIE 9.0; ?Windows NT 9.0; ?en-US)”,

“Mozilla/5.0 ?(compatible; MSIE 9.0; Windows NT 6.0; ?Trident/4.0; ?SLCC1; .NET CLR 2.0.50727; Media Center PC 6.0)”,

..........

“Opera/9.80 ?(Macintosh; Intel Mac OS X 10.6.8; U; fr) Presto/2.9.168 Version/11.52”, ]

中間件文件customUserAgent.py,隨機使用資源文件中的User-Agent,具體實現(xiàn)如下。

Class RandomUserAgent(UserAgentMiddleware):

Def process_request(self,request,spider):

Ua= random.choice(UserAgents)

Request.headers.setdefault(‘User-Agent, ua)

修改配置文件settings.py,將RandomUserAgent加入到DOWNLOADER_MIDDLEWARES中,具體實現(xiàn)如下。

DOWNLOADER_MIDDLEWARES = {

‘myproject.middlewares.customUserAgent.RandomUserAgent:30,

‘scrapy.contrib.downloadermiddleware.useragent.UserAgentMiddleware:None

}

通過以上代碼,爬蟲具備破解User-Agent封鎖的能力。

4 破解IP封鎖

網(wǎng)站可通過IP來確定用戶身份,當(dāng)在同一連續(xù)時間段中,多個請求由同一IP的用戶發(fā)起,如果請求數(shù)量較少,則可判斷為網(wǎng)吧或大型局域網(wǎng)[3],允許其訪問;如果請求數(shù)量較多,則可判斷為網(wǎng)絡(luò)爬蟲,從而拒絕其訪問;因此,網(wǎng)絡(luò)爬蟲可以準(zhǔn)備一個代理池,發(fā)出請求時隨機選一個代理服務(wù)器使用,以達(dá)到破解IP封鎖。

在Scrapy框架中,為了實現(xiàn)破解IP封鎖,需要在settings.py的同級目錄創(chuàng)建middlewares模塊;在模塊中,創(chuàng)建資源文件resource.py和中間件文件customeProxy.py。resource.py用于存放多個網(wǎng)絡(luò)代理;customProxy.py用于隨機調(diào)用不同的代理服務(wù)器。

資源文件resource.py,將裝有多個代理服務(wù)器的代理池放在列表中,具體實現(xiàn)如下。

PROXIES = [

‘110.73.7.47:8123,

‘110.73.42.145:8123,

‘182.89.3.95:8123,

‘39.1.40.234:8080,

‘39.1.37.165.8080

]

中間件文件customProxy.py,隨機使用資源文件中的代理服務(wù)器IP,具體實現(xiàn)如下。

Class RandomProxy(object):

Def process_request(self,request,spider):

Ua= random.choice(PROXIES)

Request.meta[‘proxy]= ‘http://%s ?%proxy

修改配置文件settings.py,將RandomProxy加入到DOWNLOADER_MIDDLEWARES中,具體實現(xiàn)如下。

DOWNLOADER_MIDDLEWARES = {

‘myproject.middlewares.customUserAgent.RandomUserAgent:30,

‘scrapy.contrib.downloadermiddleware.useragent.UserAgentMiddleware:None,

‘myproject.middlewares.customProxy.RandomUserAgent:10,

‘scrapy.contrib.downloadermiddleware.httpproxy.HttpProxyMiddleware:20

}

5 結(jié)束語

綜上所述,網(wǎng)絡(luò)爬蟲最常見的時間間隔封鎖,Cookie封鎖,User-Agent封鎖,IP封鎖,都有相應(yīng)的攻擊方法破解;本文以網(wǎng)絡(luò)爬蟲Scrapy框架為基礎(chǔ),給出以上4種封鎖技術(shù)的破解方法及實現(xiàn)代碼。

參考文獻(xiàn)

[1]潘曉英,陳柳,余慧敏,趙逸喆,肖康濘.主題爬蟲技術(shù)研究綜述[J/OL].計算機應(yīng)用研究:1-6[2019-10-03].

[2]劉清.網(wǎng)絡(luò)爬蟲針對“反爬”網(wǎng)站的爬取策略分析[J].信息與電腦(理論版).2019(03).

[3]黃克敏.網(wǎng)站信息安全之反爬蟲策略[J].保密科學(xué)技術(shù),2018(10):62-63.

主站蜘蛛池模板: 精品福利国产| 性69交片免费看| 免费又黄又爽又猛大片午夜| 无码精品福利一区二区三区| 99久久人妻精品免费二区| 免费国产在线精品一区| www中文字幕在线观看| 亚洲精品制服丝袜二区| 丁香五月亚洲综合在线| 91青青草视频| 国产99热| 久久青青草原亚洲av无码| 国产农村妇女精品一二区| 午夜国产精品视频| 色吊丝av中文字幕| 国产成人精品亚洲77美色| 国产综合无码一区二区色蜜蜜| 丁香婷婷在线视频| 日韩在线视频网站| 亚洲AV无码乱码在线观看裸奔 | 久久无码免费束人妻| 国产精品冒白浆免费视频| 91国内视频在线观看| 国产欧美日韩91| 伊人精品视频免费在线| 国产99视频精品免费观看9e| 亚洲欧美精品日韩欧美| 国产在线97| 日本不卡在线视频| 超级碰免费视频91| 亚洲香蕉久久| 内射人妻无套中出无码| 国产精品妖精视频| 五月天在线网站| 日韩在线观看网站| 人与鲁专区| 在线综合亚洲欧美网站| 免费一级全黄少妇性色生活片| 成人综合久久综合| 日韩在线第三页| 中文天堂在线视频| 日本三区视频| 国产大片喷水在线在线视频| 四虎国产永久在线观看| 激情网址在线观看| 国产精品观看视频免费完整版| 国产亚洲精品91| 69av免费视频| 亚洲综合一区国产精品| 精品人妻AV区| 全裸无码专区| 激情综合图区| 天天躁日日躁狠狠躁中文字幕| 欧美精品啪啪| 久久精品这里只有国产中文精品| 九九九久久国产精品| 国产美女免费网站| 欧美日韩在线第一页| 91伊人国产| 人妻中文字幕无码久久一区| 国内精品视频区在线2021| 亚洲视频黄| 成人欧美日韩| 亚洲swag精品自拍一区| 2021亚洲精品不卡a| 黄色网在线| 欧美va亚洲va香蕉在线| 久久人搡人人玩人妻精品一| 日韩无码视频专区| 国产电话自拍伊人| 亚洲成肉网| 久久精品免费国产大片| 91无码人妻精品一区二区蜜桃 | 色综合天天综合中文网| 幺女国产一级毛片| 国产成本人片免费a∨短片| 国产毛片不卡| 久久国产精品影院| 丰满人妻久久中文字幕| 中日韩欧亚无码视频| 国产成年女人特黄特色毛片免| 国产精品3p视频|