iT邦幫忙

2017 iT 邦幫忙鐵人賽
DAY 3
0
Big Data

研究爬蟲的世界系列 第 3

研究爬蟲的世界:仁義道德篇 - 避免過度使用伺服器資源

針對一個網頁寫一個爬蟲很簡單,但針對一個網站或一群網站寫爬蟲,就是一門學問了。從上一篇 robots.txt 的探討,不知道你有沒有注意到 crawl-delay:20 設定值,它告訴我們的是我們允許你合理的來我家抓東西,但每次頻率要間隔 20 秒,否則就...

通常人家這麼好心地告訴你,也代表著它勢必有針對過度的撈取有一些防護措施,如果你不照著規則走,下一步就是把你的 IP 列入黑名單,成為列入拒絕往來戶。

所以在學會寫爬蟲之前,必須怎麼不照成對方是伺服器太大的負擔,基本上針對兩項原則做控管。

控制併發數量

JS 越來越夯,寫一個非同步的程式不像之前這麼困難,JS 雖然好寫,但也很容易在觀念還未穩固的時候踩到雷,非同步的程式在使用不慎的時候,會造成短時間發送大量的 request,關於怎麼處理這個問題往後會在談到。

控制發送頻率

依照對方訂出來的遊戲規則,設定發送 request 的間隔時間。



上一篇
研究爬蟲的世界:仁義道德篇 - robots.txt
下一篇
研究爬蟲的世界:選擇框架的兩難
系列文
研究爬蟲的世界15
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言