1. 程式人生 > 其它 >年終總結及關於我自學爬蟲的經歷點滴!

年終總結及關於我自學爬蟲的經歷點滴!

關於我自學網路爬蟲的經歷,我和《Python3 網路爬蟲開發實戰》這本書的緣分以及和崔慶才老師的微妙點滴。 目錄

一、前言

  大家好,我是小孫同學。很慶幸在我 20 歲這年,我遇到了我可以熱愛一輩子的東西 —— 程式碼。
  0 和 1 的二進位制組合推動著時代的進步,程式碼中蘊藏著改變世界的能量。

  但。。。
  但我的學習探索之路並非一帆風順,甚至是極其曲折。
  不過值得驕傲和自豪的是,即便道阻且長,窮且益堅,我也從來沒有想過放棄,從來沒有想過就此潦草收場。
  雖然我僅短短自學了十個月。但一路走來,我遇到過很多傾囊相授的老師,結交了很多志同道合的朋友,感受到了程式的魅力以及程式設計師世界裡良好的開源和社交氛圍。
  我也小有成就,相繼開通了自己的 CSDN,知乎,微信公眾號...
  也著手搭建了自己的個人網站

https://www.sunguoqi.com

  申請了自己的 Github 賬號https://www.github.com/sun0225SUN

  技術上,我現在也可以獨立開發一些簡單的 web 專案。
  https://www.bilibili.com/video/BV15L4y1E7xY
  (初次錄製,音質很差,真的很抱歉)

  編寫一些基礎的爬蟲程式。

  在學習期間,我切身體會到了什麼叫做站在巨人的肩膀上,也 get 到了為什麼圖靈社群會把這句話印刻在出版的每一本的書中。

  在我學習的過程中,我真的超級超級感激那些直接或者間接幫助過我的人。
  所以便有了寫這樣一個系列文章的計劃,以此來記錄我學習路上的點滴感動,也藉此向每一位幫助過我的老師,同學,朋友們表示感激。

二、正文

  這是第一篇,是關於我自學網路爬蟲的經歷,我和《Python3 網路爬蟲開發實戰》這本書的緣分以及和崔慶才老師的微妙點滴。

1、關於我學習爬蟲的經歷

  我學習一門技術,大概是通過購買相關的技術書籍,啃 B 站上的優質教學課程,查閱技術交流社群裡相關的文章,翻閱官方文件,白嫖 Github 開源專案程式碼等等。
  但我學習網路爬蟲的道路並沒有那麼順利。

2、關於我和《Python3 網路爬蟲開發實戰》這本書

  我首先是在 B 站上去了解什麼是爬蟲的腦海裡有了相關的輪廓後,就會去找一些優質的書籍來看,電子書紙質書等等。
  在選擇有關爬蟲的書籍時,我發現市場上關於網路爬蟲的書並不多,相較於一些什麼什麼從入門到入土(精通)之類的書真的少太多了。
  這為我尋找資料帶來了不小的困擾,而且市場上僅有的爬蟲相關的書籍,大體上寫的都不是很詳細(我在沒購買之前是通過商品展示頁面的書籍目錄來看的,那時候還沒有意識到學校圖書館這樣一個寶藏。當時花了很多冤枉錢,因為買回來的書,發現作者梳理的思路並不適合我來學習,然後翻了兩三下就放在書架上吃灰了)
  當然,我並不是說這些書寫的不好,我是說這些書寫的不適合我,或者說不適合現階段的我。
  對於一個初學者來說,高濃縮的概括反而會讓我缺乏一個過渡,很容易學著學著就半途而廢了。
  經過不斷的試錯和摸爬滾打,我最終最終終於遇到了崔慶才老師寫的這本書——《Python3 網路爬蟲開發實戰》

  那時候第二版還沒有上市,我買的是第一版,可恨的是我買的還是盜版的,印刷質量很差。
  對於盜版我這裡就不想多說了,在國內盜版書的暢銷在一定程度上的確傳播了知識,但這無疑是對智慧財產權的不尊重和肆意踐踏。
  《Python3 網路爬蟲開發實戰》這本書的內容,我敢說比我在市面上看到的任何一本書都要詳細,從它的厚度中我們便可以揣測出來。

  如果你評價它由於過於照顧初學者而顯得臃腫,我覺得在某種角度上也是可以成立的。
  作為已經有爬蟲經驗的人來說,那些基礎知識的確沒必要講。(比方說第一版中 python 第三方庫的安裝整個章節)
  但站在初學者的視角,這些所謂的臃腫便是一步一步走向成功之門的階梯。
  我相信崔大也是考慮到了這個問題,才會做的這樣一個權衡。

小遺憾
  但是第一版我並沒有學完,僅僅學到了可以做一個小爬蟲的這樣一個程度。
  由於我買的是盜版書,印刷質量真的有點差,這一定程度上成為了我學習的阻礙。
  後來我順藤摸瓜找到了崔大的個人部落格。
  https://www.cuiqingcai.com
  我發現崔大的個人部落格中有關於《python3 網路爬蟲開發實戰》的博文專題(應該是先有的部落格再有的書吧)。
  博文中的內容大體和書上相似,但有一點小小的瑕疵就是 markdown 排版的問題,這也讓我稍有膈應。
  我現在仍還對盜版書和這個排版耿耿於懷,這也間接導致了我沒有學完第一版。(當然也有其他原因,比如我自己的學習計劃,時間安排等等)

3、關於我和《Python3 網路爬蟲開發實戰》這本書的第二版

  由於第一版的鋪墊,我添加了崔慶才老師的兩個公眾號 【進擊的 Coder】【崔慶才|靜覓】,崔大發的每一篇文章我幾乎都會看,真的很受用,我也能感受到了崔老師的良苦用心。

  因為我基本上每篇文章都會看,所以我經歷了[崔大的新書獲得了python之父Guido van Rossum的引薦語]——>[新書封面確定]——>[新書內容介紹]——>[第一次給1000本書籤名]——>[正式上市]——>[知識星球活動]——>[第二次給1000本書籤名]——>[在星球裡填寫收貨資訊]——>[每日一催,等待發貨]——>[收到包裹,拆箱晒朋友圈]這樣一個完整的時間軸。

  我記得當時崔大是說能趕上今年的雙十一上市銷售的,可最後真的就是一拖再拖,11 月 26 號才正式上市的。
  上市當天,崔大也做了相應的活動,我看到 99 元加入知識星球送簽名書這樣一個選項,二話不說就參與了這樣一個活動。(我的行為是理智的,因為後面星球的價格漲到了 149 元)
  不過加入知識星球的同學贈送的簽名書需要崔大再籤 1000 本書才可以發貨(因為上次籤的 1000 本一下子就售空了)
  簽名之後還需要塑封打包很多流程,我大概又等了半個多月才收到了我的包裹,等待的感覺真的太焦灼啦。

4、關於《Python3 網路爬蟲開發實戰》第二版的內容

  我看一本書的內容會比較習慣先看他的目錄,因為目錄是整本書的一個基本架構,就像專案架構一樣。


  是的,你沒有看錯,900 多頁的內容基本覆蓋了爬蟲開發的方方面面。
  不過由於我也正在學習中,還沒有啃完這本書,我現在只能放崔大對第二版內容的一個介紹,等我學完了,我會再寫一篇文章的。
  https://mp.weixin.qq.com/s/66r5s2I-yX6OzGLRJBI0lg

5、關於我對崔慶才老師爬蟲案例平臺 Scrape 的看法

  如果你認真閱讀了崔大對這本書的內容介紹的話,你會發現一個耀眼的亮點。
  Scrape 案例平臺
  https://scrape.center

  這是一個怎樣的存在呢?下面是我的理解。
  我們都知道學習爬蟲,實戰是不可或缺的。可如果我們直接爬取現成的網站,會遇到很多問題。

  • 第一、網站改版,程式碼無法正常執行。
      目標網站一旦改版,通過書本上的教程跑出來的程式碼就無法繼續正常運行了,這是一個非常大的問題,也會極大挫敗學習者的心態。

  • 第二、對目標網站帶來一定的負荷,不良心。
      爬蟲帶來的流量如果過大,就會對其正常的運營造成干擾,我相信我們的出發點都是去學習一門技術,而不是搞破壞浪費資源,這樣真的很不良心

  • 第三、不尊重目標網站資訊的著作權,易產生糾紛。
      我相信網站的開發者,管理者,掌權者都很樂意去共享資訊,這是一種無私的開源精神。像豆瓣,百度,高德地圖開放平臺等等都有提供相應的 API。

  可當我們直接對網站進行爬取的時候,自覺不自覺的就進入了一個灰色地帶,會造成一些侵權行為,即便有君子協議的存在(robots.txt)
  而崔大自己做的案例平臺 Scrape 徹底的解決了這些問題。

  • 第一、書籍和案例平臺配合,不用擔心爬取的目標網站改版。
  • 第二、崔大自己的案例平臺,崔大自掏腰包允許任何人來爬。
  • 第三、案例內容不涉及任何商業行為,不會帶來任何法律問題。

  很大程度上,當我看到Scrape 這樣一個案例平臺的時候,我就知道,其他的任何爬蟲書,爬蟲資料我都不需要了。

6、關於我閱讀《Python3 網路爬蟲開發實戰》這本書的感覺

  見字如面,在讀一本書的時候就像是在和書的作者進行交流,我喜歡這種感覺,在讀《Python3 網路爬蟲開發實戰》這本書的時候也是如此。
  崔慶才老師的書讓我閱讀起來很絲滑,因為我也經常寫部落格,做筆記。我完全可以釐清崔老師寫書的思路,從而更加清晰我下一步的學習方向,然後多敲程式碼,多加練習,從而提升自己的技術能力。

7、關於崔慶才老師的親和力

  在自學的過程中,我加入過很多學習交流群。有些群裡真的是臥虎藏龍,群友們各個都是人才,說話又好聽,我超喜歡群裡的,和群友們進行交流真的受益匪淺。
  崔大也同樣運營了這樣一個學習交流群。

  最最最值得我所欽佩的是,崔大經常在群裡為群友們解決問題,這。。。崔大時間這麼充裕的麼,慕了!(當然我知道崔大有個高仿小號,有時我也分不清哪個是真身)
  所以我們可以思考一下,高頻度的交流會帶來什麼?
  帶來的是崔大的親和力。
  我在閱讀書的同時,我還有作者的微信。我和作者發訊息,作者不會耍大牌,還會回覆我。天呢,這不就是追星追到了的感覺麼。

8、我想成為像崔慶才老師這樣的人

  在我眼裡,崔慶才老師和 Vue.js 的開發者尤雨溪都創造出了令人驚豔的東西。

  二位都是明星人物,我是兩位大佬的超級粉絲,中國開發者需要這樣的領軍人物。
  袒露心聲,我想成為這樣的人,為行業,為社會做出力所能及的貢獻。雖然很難,任重而道遠,但我一定會好好努力的。
  總之,可以預見的是崔大的《Python3 網路爬蟲開發實戰》第二版會引領又一個“全民”學習網路爬蟲的浪潮。
  正如 python 之父的引薦語所說的一樣。
   this book will help more people understand Python and web crawling/scraping.
  這本書會幫助更多人去學習python和網路爬蟲。

I am happy to see that Python is so widely used in the Chinese IT community. I hope this book will help more people understand Python and web crawling/scraping.

—— Guido van Rossum, creator of Python, Distinguished Engineer, Microsoft

三、後記

  最後,我想引用魚 C 小甲魚的一段話結束本篇文章。(小甲魚(李佳宇)也是我程式設計上的啟蒙老師)
  我們一直在努力耕耘這麼一片簡單的土壤,雖然沒有達到盡善盡美,但已初見雛形。
  十年前我們仰望星空,十年後我們將俯視大地,未來的天空,必將為我們留下一片燦爛的曙光!

  願你我都可以不負人間理想,找到自己的熱愛,真心去做一件事情,正如本文標題所言,當你真正想去做一件事情的時候,全世界都會來幫你。