91高清免费看_欧洲精品_好吊日在线视频_肉色超薄丝袜脚交69xx_男人天堂视频_99热色

如何避免爬蟲采集速度出現了ip限制?

b b b

如何避免爬蟲采集速度出現了ip限制?

  大家知道在大數據時代,每天互聯網上進行得最頻繁的一個操作是用ip代理工具進行網絡爬蟲抓取,爬蟲的速度,并不是越快越好,采集的速度太快,就容易被發現有可能封號。那么如何避免這個問題呢?

  通常情況下,在每個頁面抓取之間設定較大的延時等待以限制最大訪問頻率,可以保證既不會給服務器造成過重負擔,也不會因訪問太頻繁而被服務器禁止,然而這樣的方法將導致網絡利用率低,抓取速度慢,對于大量網頁的抓取任務來說,往往是無法忍受的。

 

  一個簡化的理想模型,可以很好的說明這個問題,假設某網站允許的最大訪問頻率為6頁/分鐘,于是最小時間間隔為10s,這個時間要通過很多次重復試驗來確定。網絡流暢時每個網頁讀取時間為0.5s,為了保證不被服務器屏蔽,至少要等待9.5s的間隔時間才繼續抓取下一個頁面,這個9.5s的間隔時間是固定的,即使網絡較差時也要等待這么長的時間。網絡較差時,網頁讀取時間為9.5s,再延時等待9.5s,于是每個網頁的讀取時間變為19s,幾乎是網絡流暢時的兩倍。而實際上網絡較差時的理想情況下,只需要等待0.5s,這時便保持和網絡流暢時相同的抓取速度,由此可見這種限制最大速度的方法是很低效的。

 

  另外延時等待時間對抓取頻率的影響是很模糊的,延時1s時抓取頻率是100頁/分鐘,那么延時10s就是10頁/分鐘嗎?很難確定,尤其是在復雜的網絡環境中。

 

  要改進上述方法,一種很自然的解決方案就是:使等待時間動態變化,即等于最小時間間隔減去網頁讀取時間,這樣就能保證網頁平均抓取時間在網絡流暢和網絡較差時都為最小時間間隔。這種方法對于單線程的爬蟲訪問小規模網站來說也許可行,但在多線程分布式的爬蟲訪問大規模網站時,整體上的抓取時間由許多并行的抓取任務共同決定,并且各種異常情況(頁面無效或者連接超時)使得抓取時間更加不可計算,這種方法就顯得相當笨拙了。

 

  綜合考慮各種因素,顯然我們需要一種模糊的,不需要精確計算的方法來控制爬蟲抓取速度,而且這個速度是很直觀的以頻率(頁/分鐘)來表示——PID控制算法就是其中一種。PID控制器控制爬蟲速度的原理簡單來說就是:速度快了,增加延時時間;速度慢了,減小延時時間。

 

  最好的方法是使用動態ip海,幫我們解決IP受到限制的問題,但我們還是要注意分析出不同網站的反爬機制。

 

版權聲明:本文為ipadsl.cn所屬公司原創作品,未經許可,禁止轉載!

主站蜘蛛池模板: 神马久久久久久久久久 | 蜜桃一二三区 | 六月婷婷在线 | 超碰97人人爱 | 日韩mv欧美mv国产网站 | 国产精品国产一区二区三区四区 | 久久婷婷国产麻豆91天堂 | 亚洲黄色成人网 | 中文字幕永久在线观看 | 绯色av| 久久网站精品 | 亚洲色图欧美日韩 | 免费看的黄色网址 | 亚洲网站在线观看 | 久久免费播放视频 | 四虎影院永久网址 | 五月婷婷一区二区 | 日韩欧美爱爱 | 免费av观看网站 | 国产精品久久免费视频 | 国产精品zjzjzj在线观看 | 亚洲a v网站 | 久久黄视频 | 日韩av中文 | 亚洲成人自拍偷拍 | 天堂久久久久久 | 欧美激情在线播放 | 国产精品色网 | 又色又爽又黄18网站 | 精品伊人久久 | 欲色综合| 久久久性视频 | 超碰老司机 | 久草这里只有精品 | 久久人人精品 | 性爱一级视频 | 天天操天天干天天爽 | 亚洲影院在线观看 | 午夜精品在线视频 | 亚洲三级小视频 | 爱射综合|