網(wǎng)絡(luò)爬蟲沒有代理IP能流暢運行嗎?很多人認(rèn)為爬蟲必須使用代理IP,沒有代理IP會移動困難,也有人認(rèn)為代理IP沒有必要。那么他們這么想的原因是什么呢?
有朋友說他用一個機車收集器收集了一些文章,然后篩選出符合自己要求的進(jìn)行加工。他從來不用代理IP,一天收一萬篇左右。他認(rèn)為沒有代理IP。
有朋友說自己寫爬蟲程序,公司的任務(wù)是一天爬幾十萬個頁面。有時候任務(wù)多的時候,一天就要幾百萬。抓取IP時會被屏蔽。沒有代理IP,根本不行。他認(rèn)為,如果沒有代理IP爬蟲,這將是不可能的。
顯然他們說的很有道理,都用自己的經(jīng)歷證明了自己的觀點。其實爬蟲本質(zhì)上是一個訪問網(wǎng)頁的用戶,只是一個沒有那么自律的特殊用戶,而服務(wù)器一般不歡迎這樣的特殊用戶,所以總是用各種手段去發(fā)現(xiàn)和禁止。最常見的就是判斷你的訪問頻率,因為普通人訪問網(wǎng)頁的頻率并不是很快。如果發(fā)現(xiàn)某個IP訪問速度過快,就會封禁。
任務(wù)量不是很大的時候,也就是像第一個朋友那樣,可以慢慢爬,頻率不是很快。在目標(biāo)服務(wù)器看來,是可以忍受的,而且不影響正常運行,這樣IP就不會被屏蔽,所以他不用代理IP就可以完成每天的任務(wù)量。
當(dāng)任務(wù)量比較大的時候,比如第二個朋友,一天幾十萬上百萬的數(shù)據(jù),爬得慢的話就完不成任務(wù)了。如果他爬得快,目標(biāo)服務(wù)器壓力太大,IP被封,任務(wù)也無法完成。我能怎么做呢?只靠代理IP解決。
比如一個IP短時間內(nèi)被訪問100次,就會被目標(biāo)服務(wù)器認(rèn)為速度太快,導(dǎo)致IP被屏蔽。但如果10個代理IP短時間內(nèi)被訪問10次,就不會被認(rèn)為太快而屏蔽。當(dāng)任務(wù)量巨大時,使用代理IP往往能事半功倍,這也是為什么有人認(rèn)為沒有代理IP就沒有網(wǎng)絡(luò)爬蟲。