爬蟲工程師?
從11月17號開始學爬蟲,到現在將近1個月
期間完成了
1. 基於Python語言的爬蟲開發環境搭建(windows10/64bit和ubuntu17.10/64bit)
2. 完成了菜鳥官網(HTTP/HTML/AJAX/JSON/CSS/XPATH)以及簡單的MySQL/Redis/MongoDB的學習
3. 閱讀
requests/re/selenium/lxml/beautifulSoup/pyquery/pyspider/scrapy/pymql/pymongo
的官方文檔和通過例子的編寫實現了一些基本功能的理解
4. 通過崔慶才的視頻教程完成了基本的一些簡單爬蟲的編寫和理解
遇到的問題和實現的項目都已經歸檔到博客:
http://www.cnblogs.com/copywang/
回頭看看這些天的勞動,反思以下:
1. 環境問題導致的重複安裝勞動(以後直接切換到Ubuntu環境),特別是框架安裝時候的問題比較多(pyspider/scrapy),重複安裝至少耗費了2天時間
2. 基礎知識不牢固,在實現scrapy的時候,Pycharm中的external_lib每次創建新項目和在原有項目中再打開是不一樣的,出來了import錯誤,折騰了1天
3. 數據類型辨識錯誤,沒有理解好各個不同的解析庫解析出來的是class還是str,在調試過程每次都要列印type,浪費了比較多的編程時間
4. 不能迷信框架,在調試pyspider/scrapy的過程中,出現了比較多的調用錯誤,雖然框架在一定程度上減少了調用者的編程難度,在沒有閱讀和理解源碼的情況下,沒有理解到各個部件之間的聯繫,並不會在多大程度上給新手帶來好處,如果是工作條件下的追求效率實現,倒是沒什麼問題,但是對於新手一上來就使用框架,並沒有想像中那麼好
5. 多使用基本的request和lxml
6. 動態語言寫起來爽,但是在debug的時候真的要命
7. 增量爬取還沒有學到任何資料
以上就是學習的內容,本吊智商捉急,無法達到大神那種一點即通的境界,只能來面向工作編程,快到年底,看看爬蟲工程師的需求和崗位要求,有句話說得好,一個人的成功,紀要講究個人努力,也要配合歷史進程
1. 拉勾網的爬蟲工程師需求
廣州地區(本吊不能出去其他城市找工作)
全部只有33個工作崗位,而且從最近5個月我的觀察來看(前面四個月去浪了~~~),一直都是這些公司在招聘
包含:電商,自媒體,金融(P2P)
經驗要求:1-3年居多,大專本科起步(可見其實爬蟲工程師的門檻還是比較低的)
薪資:自不用說,拉勾上出名的工資給高,所以如果標識10K-15K,基本上也就是10K(8K就算給你面子了)
技能要求:
任職要求:(我找了一個工資最高的https://www.lagou.com/jobs/3436801.html )
1. 1年或以上爬蟲開發相關經驗,計算機相關專業本科以上學歷;
2. 具有微信、微博至少一種自媒體平台的爬取經驗;
3. 熟悉Python或Java語言;
4. 熟悉多線程、網路編程,精通網頁抓取原理及技術,精通正則表達式,能從結構化的和非結構化的數據中獲取信息;
5. 熟練使用MySQL資料庫,掌握Redis、MongoDB、Hive等常用NoSQL技術並具有實戰經驗;
6. 精通一種開源爬蟲框架,有開發爬蟲框架經驗優先;
8. 善於溝通,有良好的文檔寫作能力,口頭溝通能力,良好的團隊合作精神,良好的抽象思維。
再找個工資比較低的(https://www.lagou.com/jobs/2735224.html )
職位職責:
1、 負責開發網頁數據的自動化爬取腳本程序及自動化解析腳本程序;2、 負責清洗、分類已解析的互聯網數據;3、 負責自動化數據解析系統的部分模塊開發;4、 參與核心爬蟲系統架構設計、資料庫設計;5、 分析爬蟲系統的技術缺陷,對策略架構做出合理地調整和改進。 任職要求:1、 計算機、軟體、電子信息等相關理工科專業,1年以上相關工作經驗;2、 熟悉python爬蟲開發,熟悉常用的信息抓取策略和數據重組演算法;3、 了解Mongodb、HBase、HIVE等NoSQL資料庫,並至少精通一種關係型資料庫的開發;4、 熟悉大規模網頁爬取,深度網頁爬取,熟悉Nutch、Scrapy、Lucene、Heritrix、Solr、Sphinx等工具優先考慮;5、 熟悉網路爬蟲相關技術,如有分詞、spider、分類、聚類、索引、檢索等相關開發經驗者優先;
6、 熱愛軟體編程,願意與人分享專業知識和經驗。從上面其實看得到:
1. 大公司對於專職的爬蟲工程師需求沒有(原因可能是,一來爬蟲門檻不高,大公司的程序員,特別是前端的對於爬蟲框架其實從零開始難度不大,二來大公司自己本身的數據已經足夠做市場對比,不需要再從其他網站爬取),這裡就不說某度了,搜索引擎公司肯定是有自己的爬蟲框架的,另外,就學了2個月爬蟲,想進去做搜索引擎的爬蟲是不是好高騖遠了
2. 爬蟲設計涉及的項目經驗要求比較高,一來出來要設計分散式架構,還要存儲架構,還有增量更新方法,且不說去實現一個公司級別要求的爬蟲系統,難度是很高的
3. 對於工資普遍都高的拉鉤都能給出這麼低的工資,看來爬蟲工程師得真的是熱愛爬蟲才幹得下去(個人猜測轉行做後端/機器學習的不在少數)
總結:當前掌握的知識和編碼水平,連最低級別的爬蟲工程師都達不到
任重而道遠
從職業發展看,不覺得爬蟲工程師是個好的需求了。。
推薦閱讀:
※Python元編程:控制你想控制的一切
※python3.x 如何從str中提取bytes?
※Python,Lua 哪個適合做繪圖軟體的插件腳本語言?