專欄丨當代“爬蟲”現狀

一、“爬蟲”是什麼

大東:小白,身為計算機學科的學生,“網絡爬蟲”你應該不陌生吧?

小白:那當然了,寫的最多的就是“爬蟲”程序了。

大東:既然你這麼熟悉,能給我講講什麼是“爬蟲”麼?

小白:當然能,終於有一天能給大東動反向傳播知識啦,哈哈哈!“網絡爬蟲”就是一種按照一定的規則,自動地抓取萬維網信息的程序或者腳本,能夠把網站上的信息收集回來,並且能在網站之間遊走。

大東:沒錯。隨著網絡的迅速發展,萬維網成為大量信息的載體,如何有效地提取並利用這些信息成為一個巨大挑戰,搜素引擎就是一種典型的“爬蟲”應用,它每隔幾天對全網的網頁掃一遍,以便大家查閱,被掃網站也樂意被收集。但是,小白你知道嗎?“爬蟲”也分善惡!

小白:我可沒有寫過惡意的“爬蟲”,大東東你別看我。

大東:像搶票軟件這樣的“爬蟲”,對著 12306 每秒掃幾萬次,被掃網站對它十分厭惡。

小白;哦,作為12306用戶的我,也挺討厭搶票軟件的。

大東:那你知道網絡世界這麼多“爬蟲”,都愛爬哪些網站?

小白:我猜...我猜不出來...求大東東指教!

專欄丨當代“爬蟲”現狀

網絡爬蟲(圖片來自網絡)

二、爬蟲分佈圖

大東:根據“python技術客棧”公開的世界“網絡爬蟲”分析結果,爬蟲最多的就是出行軟件,比如前面所說的12306就是他們的目標之一;緊隨其後的是社交軟件、電商軟件。

專欄丨當代“爬蟲”現狀

“爬蟲”流量目標行業分佈(圖片來自網絡)

小白:沒想到“爬蟲”種類還不少呢!

1、“爬蟲”最大聚集地——出行軟件

大東:出行行業中“爬蟲”的佔比最高,在出行的“爬蟲”中,有89.02%的流量都是衝著 12306 去的。

小白:哇哦,全中國賣火車票的獨此一家別無分號,也難怪呢。

大東:小白你有沒有發現,12306的驗證碼比其他網站的更為複雜呢?

小白:沒錯,有時候我甚至覺得自己智商不夠用了。

大東:這些東西不是為了故意難為賣票的普通用戶,而恰恰是為了阻止搶票軟件這種“爬蟲”的點擊。簡單的“爬蟲”無法正確識別複雜二維碼,因此就能夠被擋在門外。

小白:不對啊,可現在還是可以用搶票軟件搶到票啊。

大東:沒錯。搶票軟件也不是吃素的,它們在和12306搞“對抗”。“打碼平臺”,你聽說過嗎?

小白:那是啥?

大東:打碼平臺僱傭了很多叔叔阿姨,他們的工作就是幫人識別驗證碼。當搶票軟件遇到了驗證碼,系統就會自動把這些驗證碼傳到他們面前,以人工的方式完成識別,然後再把結果傳回去。這期間總共只需要幾秒時間。

小白:厲害了啊!

大東:這樣的打碼平臺還有記憶功能,當遇到已經標記過的圖,系統能直接判斷它是驗證答案。時間一長,12306 系統裡的圖片就被標記完了,機器自己都能認識,人工環節就可以省略了。

小白:人工擊敗數據庫啊這是!

大東:每當過年前,就是12306最繁忙的時候。據公開數據表示:“最高峰時1天內頁面瀏覽量達813.4億次,1小時最高點擊量59.3億次,平均每秒164.8萬次。”這還是加上驗證碼防護之後的數據,可想而知被攔截在外面的爬蟲還有多少。

小白:天吶,我回家的票就是被他們搶走的。

大東:被搶票軟件把票搶走,對我們父母那樣的不會搶票的人來說,是不是公平呢?

小白:太過分了!

專欄丨當代“爬蟲”現狀

12306驗證碼(圖片來自網絡)

2、水軍勢力——社交軟件“爬蟲”

小白:社交軟件也有什麼可“爬”的麼?

大東:你想,如果我能隨心所欲地指揮一幫機器人,打開某人的微博,然後刷到某一條,然後瘋狂關注、點贊或者留言……

小白:噢!殭屍粉!

大東:你想這個場景:一個路人甲的微博沒人關注,於是用大量的“爬蟲”給自己做了十萬人的殭屍粉,一群殭屍在我的微博下面點贊評論,不亦樂乎。

小白:這有啥好樂的?

大東:接著,路人甲找到一個遊戲廠商,跟他說:你看我有這麼多粉絲,你在我這投廣告吧。我幫你發一條遊戲的註冊鏈接,每有一個人通過我的鏈接註冊了遊戲,你就給我一毛錢。廣告主說,不錯,就這麼辦。

小白:那他發的註冊鏈接,也沒人點啊。

大東:路人甲不慌,又讓十萬“爬蟲”繼續前赴後繼地點擊註冊鏈接,然後自動去完成註冊動作。

小白:哇,這不是騙錢呢嘛!

大東:我只是舉了個例子,數據不一定和現實吻合,具體操作也會更復雜。

小白:這種賺錢方式,太過分了!

大東:你再想象下這個場景:微博上經常有明星給粉絲髮紅包麼,於是有人率十萬殭屍粉去搶……

小白:難怪我每次打開都是“已搶完”啊!這些“爬蟲”太過分啦!

3、購物“助手”——電商軟件“爬蟲”

大東:小白,你在網上購物是怎麼挑選商品的呢?

小白:我就是在每個軟件上搜索我要買的東西,然後一家一家對比。

大東:作為老網購人了,你竟然不知道有種東西叫做“比價網站”。

小白:還有這東西?

大東:在比價網站上,你搜索一樣商品,這類聚合平臺就會自動把各個電商的商品都放在你面前供你選擇,基本各大購物網站都能囊括在內。

小白:好東西呀,回頭我試試!

大東:這就是“爬蟲”的功勞。它們去各家電商軟件上,把商品的圖片和價格統統扒下來,然後在自己這裡展示。

小白:電商網站知道自己被“爬”了嗎?

大東:當然知道。然而電商網站是拒絕的,但是很難阻止這類事情發生。由於“爬蟲”是模擬普通用戶的點擊行為,電商網站通常難以辨別機器行為,甚至都不能使用複雜驗證碼。

小白:是啊,如果每點開一個商品詳情,就要做一次驗證,還剁手呢,我都想剁了手機!不過為啥電商軟件不喜歡被“爬”呢?

大東:對同一商品在單個電商軟件內,它能決定哪個搜索結果排在前面,哪個在後面。但是如果用戶一旦使用了比價平臺,這個排名就失去了意義,電商軟件就喪失了控制權。

小白:也是,斷人財路,難怪不受歡迎。

三、“爬蟲”合法嗎?

小白:大東東你說了這麼多,我有些疑惑了,難道爬蟲一種違法行為麼?

大東:這個問題還真的不簡單,《網絡安全法》裡沒有對“爬取網絡公開信息被認定為違法”的條款,但是有條司法解釋值得注意:“未經授權爬取用戶手機通訊錄超過50條記錄;未經授權抓取用戶淘寶交易記錄超過500條;未經授權讀取用戶運營商網站通話記錄超過500條;未經授權讀取用戶公積金社保記錄的超過50000條的。”以上這些情況可以入刑。

小白:這個我可得注意注意,別一不小心違法亂紀啦。

大東:與被“爬”企業勢不兩立的爬蟲,說白了,就是阻擋了對方的財路。企業也不會善罷甘休,經典的對抗方式,除了剛才說的驗證碼外,還有滑塊驗證、封禁 IP、給訪問者增加一些加解密運算,耗費“爬蟲”的程序資源等等。

小白:各顯神通的對抗啊。

專欄丨當代“爬蟲”現狀

滑塊驗證(圖片來自網絡)

大東:“爬蟲”是一種在廣闊萬維網上收集信息的技術,本身並沒有好壞之分,但寫“爬蟲”程序的人是趨利的,當他們想用“爬蟲”來達到自己不可告人的秘密時,爬蟲就有了好壞之分。

小白:技術是把雙刃劍啊!我們應該好好規範自己的使用,並且互相監督,讓這個世界更加美好。

參考鏈接:

1. 中國爬蟲圖鑑
https://mp.weixin.qq.com/s/owfGEhjMrLmGRNatP8eDjg

2. 網絡爬蟲
https://baike.baidu.com/item/%E7%BD%91%E7%BB%9C%E7%88%AC%E8%99%AB/5162711

3. Python爬蟲原理
cnblogs.com/sss4/p/7809821.html

4. “來我公司寫爬蟲嗎?會坐牢的那種!”
https://blog.csdn.net/yellowzf3/article/details/102634078

5. 陳根:從爬蟲技術到爬蟲行為,網絡爬蟲的罪與非罪
https://www.sohu.com/a/414338280_124207

來源:中國科學院計算技術研究所


分享到:


相關文章: