Colly的默認配置是爲在一個做業中抓取少許站點而優化的。若是您想爬行數百萬個站點,這種設置不是最好的。如下是一些調整:git
默認狀況下,Colly將cookie和訪問過的url存儲在內存中。您能夠用任何自定義後端替換內置的內存存儲後端。詳情請點擊這裏。github
默認狀況下,Colly在請求未完成時阻塞,所以遞歸調用Collector。回調訪問產生不斷增加的堆棧。收集器。Async = true這是能夠避免的。(不要忘記在async中使用c.Wait()。)後端
Colly使用HTTP keep-alive來提升抓取速度。它須要打開文件描述符,所以長時間運行的做業很容易達到max-fd限制。cookie
HTTP Keep-alive能夠經過如下代碼禁用:異步
c := colly.NewCollector() c.WithTransport(&http.Transport{ DisableKeepAlives: true, })