爬蟲工程師的未來方向在哪?
目前在國內互金某領域領頭的一家公司實習,做的是Java金融爬蟲。
公司主要打交道的數據都是基金、財務賬單、徵信等。團隊上個月開始了新項目。主要方向是數據的抓取和解析。
做了一個來月的爬蟲,慢慢會去了解一些爬蟲的時訊,發現真正專爬蟲領域的人少之又少,網路上都在提大數據時代,數據曠工應該是比較吃香的職業,但薪資水平,從某招聘網站上來看,似乎也不高。似乎沒那麼符合大數據寵兒的待遇,而且似乎爬蟲領域很少會有技術論壇或是技術交流會,印象中也不清楚有哪些爬蟲大神。是因為爬蟲公司的工作就是抓取數據,給人感覺比較乏味無趣,或是缺乏技術水平?為何爬蟲工程師在技術圈子裡顯得異常低調?不知爬蟲工程師的未來在何方?
做爬蟲工作好,互聯網總是需要爬蟲,互聯網誕生之初就有爬蟲,還會繼續與互聯網相伴。在大數據中,數據處理過程就像一條流水線,爬蟲解決源頭問題,很關鍵,而且在整個流水線上,數據獲取和清洗佔去了大半工作量。而且要不斷提升技能,應對各種網站新技術和防爬,做網路爬蟲天天都是新生活。
最近機器學習、神經網路、深度學習好熱鬧,93年我的神經網路課程就學完了,這麼多年來做各種數據挖掘、統計分析、自然語言處理,其實都沒有做爬蟲有意思,因為能做的就是調整調整參數,把模型迭代優化一下,基礎演算法就是那幾套,在絕大多數公司擁有的條件下,根本不可能去做基礎性研究和創新。所有這些工作都沒有做爬蟲有意思。不信,先找個數據挖掘項目,先把特徵工程任務做下來,體會一下那種乏味。大學的時候接觸爬蟲,那時候開源的爬蟲主要是 heritrix ,沒那麼多爬蟲框架,老師手上有個輿情項目,需要大量採集新聞,自己看書寫了一個簡單的爬蟲程序,之後Jar包部署,那時候招爬蟲的都是輿情方面,採集沒什麼難度,本質是一個小型的搜索引擎,後來畢業了做了開發,後來大數據火了,大家都去玩大數據,發現沒有數據,就想到爬蟲程序去網上採集數據,第一個爬蟲項目就是新聞資訊採集,後來互聯網金融賺錢,需要採集個人授信信息,於是爬蟲的薪資高了,很多人看到爬蟲待遇好,就去寫python爬蟲,如今我就職於一家不知名的互聯網金融公司,負責數據採集,目前個人各個維度的信息採集都已經被各家公司做完了,也有供應商提供。
對於爬蟲工程師的未來看法如下:
1.大規模採集的價值不會非常高,3-5年就遇到天花板,除非去做搜索引擎。
2.個人信息採集也都已經被開發完成,技術逐漸會公開
3.應對防採集的道路任重道遠,限制ip 驗證碼、滑動驗證等
對於想從事爬蟲的人來說,建議慎重,不要把爬蟲當做主業,你投入精力發現掌握有限,缺少實踐經驗不會引起企業注意,爬蟲崗位待遇高的原因一部分是從業人員很少,與java開發相比崗位數量可以忽略不計。爬蟲崗位對技術要求高,你的上司往往不懂技術,只看你採集結果,遇到很多人對爬蟲的理解太簡單,或者太迷信信息採集。
接觸過幾個有多年採集經驗的爬蟲工程師都選擇轉行,一個做了java開發,一個做了前端(node.js)
對於已經從事爬蟲的人建議多掌握java技術,為自己留後路,爬蟲崗位目前還是很小眾,而且不大可能有爆發,畢竟網路上的有價值數據就那麼多,企業信息就就不只10家公司採集過全量。
爬蟲開發可以轉的方向有大數據、雲計算、javaWeb開發,這個領域有長期穩定的崗位需求
文本處理、數據挖掘崗位仍然偏少,而且各方面要求比較高
第一次回答 剛好是在領域內。
贊同@free說的 可能是因為你遇到的業務場景比較單一。
有點跑題但希望和題主分享我眼中的爬蟲工程師。
就單單說我的所見所知。有什麼不對或者沒提及的歡迎補充和指出。
目前供職的公司因為涉及隱私就不提及。負責的項目都是大型新聞報紙類以及地方報業傳媒還有關注輿論的相關市級部門。
其實爬蟲工程師需要基本技能的確沒那麼多 只需要如上面回答的抓包 解析 提取之類的容易上手的東西。但是業務場景不一樣 需要的採集技能也不一樣。
論爬取難度的話
1.源碼就有的是非常簡單的,用正則或者xpath做正文提取 2.模擬登陸 3.如何破解或者繞過目標網站的反爬蟲策略 例如驗證碼,封ip之類的。4.就是需要你破解協議。
還有最主要一點 是工業化。也就是怎麼批量採集還有自動化採集
整個自動化流程包括了調度 更新 存儲 日誌。這裡的每一步都是需要爬蟲工程師去設計。如果單單只是把採取數據當成是重點 那麼爬蟲可以說是簡單的。但是要做到自動化 如何設計以及實現 還有整個流程的穩定性以及容錯 那麼這個流程可不是你想像那麼簡單的。
至於批量採集我能說的一點就是提取數據時候是否能夠自動識別該內容是目標內容。。
所以爬蟲說簡單是簡單 說難了其實涉及非常廣。
說點題外話就是 爬蟲工程師既然是以工程師結尾 要求的又怎麼可能是爬取數據這一單一路線呢。既然是大數據類別下的 那爬取的數據肯定是tb乃至pb級的數據。這裡的爬取,數據處理,存儲,日誌,展示。每一個大塊都是一個學問。所以總結為 任重道遠。
大數據時代數據為王,誰能拿到數據誰牛b,只是你所接觸的業務場景比較單一。舉個例子,比如爬app有些帶私有協議,或者爬登錄數據,各種反爬場景等等都是需要很強的技術積累的。再者,每天爬100tb數據下來,想想你的系統該如何設計?
只是你沒碰到好的機會和環境,並不代表這個行業不行!
最後,有興趣跳槽可私信。
關鍵是沒什麼技術含量。普通的爬蟲。就是抓包,發請求 解析數據 寫資料庫。。
需要爬蟲工程師的一般都是中小公司(大公司一般都是用自己的業務數據),而小公司的爬蟲工人都是單槍匹馬乾的。剛剛新建的一個Q群(117554744),希望有朝一日能聚攏分布在各個城市的全職爬蟲工人。
做爬蟲對於技術要求也很高啊。
既然有人贊 那就怒答一發。
高並發 分散式 一個高並發就夠你學的。
然後 往上走 卷積神經網路 識別驗證碼
自己實現js解釋器 htmlunit 為什麼能執行js 因為他裡面有一個js解釋器
寫牛逼了 可以去寫瀏覽器了
百度搜索公司互聯網數據研發部
最近剛收到了兩份實習offer,一份是java爬蟲開發,一份是網銀後台開發,也是很糾結。
自己是大學期間有過爬蟲的經驗,想通過爬蟲開發轉到數據挖掘,畢竟現在大數據也是大火的方向。簡單的爬蟲肯定是容易,無非是請求獲取與解析,但要完成大型的穩定的爬蟲系統涉及的東西也還挺多.相對來說爬蟲開發需求相對後台開發的需求是極小的,以後的職業發展可能會遇到瓶頸。
後台開發現在的需求還挺旺盛,而且面涉及的也挺廣,可發揮施展的空間更大,大公司招得相對更多的也是後台開發的人員.考慮到以後的職業規劃和發展,還是選擇了網銀開發的實習生。
推薦閱讀:
※如何抓取etymonline的詞根與解釋?
※網路技術不斷進步,我們還有隱私么?
※豆瓣robots.txt為什麼只專門提到豌豆莢的useragent?
※只精通爬數據這個技能,以後能有大的發展嗎?
※如何獲取鬥魚直播間的彈幕信息?