1. 程式人生 > >爬蟲學習筆記第1章

爬蟲學習筆記第1章

人說最好的學習是教學,我深以為然。為了理清學習這本書《Python3爬蟲網路爬蟲開發實戰》的一些概念,開始寫本系列。這個系列的博文將

  1. 提煉書中重點核心理念
  2. 記錄我在學習這本書時遇到的非技術性問題及其解決方案
  3. 給出我個人的觀點和建議

有些內容我暫時不會寫到——因為我暫時沒有學到——但一定會補上的。

這些文章將不斷更新。

我的配置:Win10專業版,64位作業系統

以下開始第一章。

第一章總述:

開發環境的配置是Python開發的極為重要的一部分,而且根據個人經驗,安裝這些東西並不像其看起來那麼簡單。若是不斷遇到安裝失敗,將會打擊人的積極性。

1.1 - Python3的安裝

強烈推薦使用Anaconda。首先它本身就集成了一些常用的包如lxml(如果只安裝python,這個包的安裝將非常銷魂)我們不用再麻煩去安裝了;其次,如果安裝了Anaconda,可使用其自帶的conda安裝方式——和pip安裝方式相似,只是pip install xxx 變成conda install xxx——安裝成功率高於pip;再次,Anaconda集成了一個供Python資料處理專用的IDE:Spyder,介面清爽,功能齊全,個人感覺相對於PyCharm,更加穩定不作妖,而且更像我喜歡的純編輯器。 更多資訊可以參考連結:

https://www.jianshu.com/p/eaee1fadc1e9

注意:Anaconda在安裝時注意要將其加入環境變數(一個勾選框),雖然它註釋是不建議。

1.2 - 請求庫的安裝

  1. requests的安裝 推薦使用conda安裝。如果按書上的pip3 install requests 出現問題,可以嘗試pip install requests以及easy-install requests

  2. Selenium的安裝 同上

  3. ChromeDriver的安裝 首先要注意檢視Chrome的版本。我在下載安裝時(2018.9.2)已經是68.0版本了,需要下載v-2.41版本的ChromeDriver。 另外如果安裝的是Anaconda,則是將那個可執行檔案放在Anaconda下的Scripts目錄下。

  4. GeckoDriver的安裝 同上。

  5. PhantomJS的安裝 同上。在使用PhantomJS時會出現warning說Selenium對其的支援受到反對。可以無視。

  6. aiohttp的安裝 同上。

1.3 - 解析庫的安裝

  1. lxml的安裝 Anaconda安裝的不再需要安裝這個包。如果不是,則首先嚐試conda,pip,easy-install等安裝方式,若都不行,可以使用wheel安裝包安裝。
  2. Beautiful Soup的安裝 同上。注意,匯入到本機python庫中的庫資料夾名是簡寫bs4而非全名
  3. tesserocr的安裝 在安裝tesseract時需要注意,只需檢視並勾選少數語言即可,不必勾選全部支援語言,不然逐一下載語言支援包將會非常慢。 其次,我使用pip無法安裝,使用conda反饋是查詢不到這個名字,建議我去Anaconda雲https://anaconda.org/去搜索包。我成功搜尋到了一個私人包,其安裝方式是 conda install -c simonflueckiger tesserocr 吐槽:這個庫的識別效率不是很高。

1.4 - 資料庫的安裝

  1. MySQL的安裝 暫無
  2. MongoDB的安裝 我安裝的已經是4.3版本,這個版本的bin目錄下已經有了data目錄,但是你依然在其下需要建立一個db儲存目錄,同理雖然有了log目錄,依然需要建立logs目錄並在其下建立log日誌檔案 注意,在輸入那一長串安裝命令前,需要在命令列中cd到bin目錄下,這個在插圖中有顯示但是沒有文字提醒。 強烈推薦視覺化管理工具Robo 3T
  3. Redis的安裝 安裝非常省心。 強烈推薦視覺化管理工具Redis Desktop Manager

1.5 - 儲存庫的安裝

  1. PyMySQL的安裝 暫無
  2. PyMongo的安裝 暫無
  3. redis-py的安裝 暫無
  4. RedisDump的安裝 非常坑。需要先安裝Ruby語言,而Ruby語言需要一些C++庫的支援(推薦使用VS15),否則在之後的更新安裝時無法成功。需要耐心,不成功可以重灌幾次。

1.6 - Web庫的安裝

  1. Flask的安裝 暫無
  2. Tornado的安裝 暫無

1.7 - App爬取相關庫的安裝

  1. Charles的安裝 暫無
  2. mitmproxy的安裝 暫無
  3. Appium的安裝 暫無

1.8 - 爬蟲框架的安裝

  1. pyspider的安裝 pip 安裝時若有問題,可以使用命令 pip install --user pyspider
  2. Scrapy的安裝 推薦使用conda安裝可以省非常多的事。
  3. Scrapy-Splash的安裝 這裡最坑的不是這個框架本身,而是Docker的安裝和電腦虛擬化的設定。如果你安裝時顯示如下錯誤:image operating system"linux" cannot be used on this platform,你需要在Docker 選單中選擇Switch to Linux Container,即將Docker內部轉換為linux環境。 而如果轉換失敗,那就是你的電腦的虛擬化沒有開啟。直接在cmd中輸入systeminfo檢視最後一項Hype-V的要求;或者ctrl+alt+del開啟工作管理員-效能-CPU中檢視【虛擬化】。若是【已禁用】,那需要進入你電腦的BIOS選擇開啟虛擬化。之後還需要確保Hype-V開啟。也可。
  1. Scrapy-Redis的安裝 暫無

1.9 - 部署相關庫的安裝

  1. Docker的安裝 從網上下載安裝包之後安裝。但之後需要注意的是如果直接在cmd輸入docker顯示沒有路徑,就需要將docker安裝檔案下的bin資料夾加入系統路徑。在命令docker可以成功之後,需要嘗試docker run hello-world 測試其是否可用。如果不可用,參考上節splash,檢查本機是否開啟了虛擬化。
  2. Scrapyd的安裝 暫無
  3. Scrapyd-Client的安裝 暫無
  4. Scrapyd API的安裝 暫無
  5. Scrapyrt的安裝 暫無
  6. Gerapy的安裝 可使用命令easy_install gerapy