Python爬蟲該怎麼學習?學習步驟是什麼?

Python爬蟲該怎麼學習?學習步驟是什麼?自學了兩個月的Python,會用爬蟲爬取一些簡單的網頁,但是學著學著就感覺很迷茫,接下來到底應該學什麼?而且不同的書學習步驟也不一樣,哪位大神可以來指點一下迷津???


不要學。

沒有用。

小網站爬了沒用。

大網站你爬不了。

不信你去爬淘寶的價格。

你要的是數據不是爬蟲,免費數據網上一大把,足夠你做數據分析。


經過一段時間的學習,我把我的爬蟲經驗寫成了一本書,名字叫《Python3網路爬蟲開發實戰》

本書通過多個實戰案例詳細介紹了 Python3 網路爬蟲的知識,本書由圖靈教育-人民郵電出版社出版發行。

  • 1-開發環境配置
  • 1.1-Python3的安裝
  • 1.2-請求庫的安裝
  • 1.2.1-Requests的安裝
  • 1.2.2-Selenium的安裝
  • 1.2.3-ChromeDriver的安裝
  • 1.2.4-GeckoDriver的安裝
  • 1.2.5-PhantomJS的安裝
  • 1.2.6-aiohttp的安裝
  • 1.3-解析庫的安裝
  • 1.3.1-lxml的安裝
  • 1.3.2-Beautiful Soup的安裝
  • 1.3.3-pyquery的安裝
  • 1.3.4-tesserocr的安裝
  • 1.4-資料庫的安裝
  • 1.4.1-MySQL的安裝
  • 1.4.2-MongoDB安裝
  • 1.4.3-Redis的安裝
  • 1.5-存儲庫的安裝
  • 1.5.1-PyMySQL的安裝
  • 1.5.2-PyMongo的安裝
  • 1.5.3-redis-py的安裝
  • 1.5.4-RedisDump的安裝
  • 1.6-Web庫的安裝
  • 1.6.1-Flask的安裝
  • 1.6.2-Tornado的安裝
  • 1.7-App爬取相關庫的安裝
  • 1.7.1-Charles的安裝
  • 1.7.2-mitmproxy的安裝
  • 1.7.3-Appium的安裝
  • 1.8-爬蟲框架的安裝
  • 1.8.1-pyspider的安裝
  • 1.8.2-Scrapy的安裝
  • 1.8.3-Scrapy-Splash的安裝
  • 1.8.4-Scrapy-Redis的安裝
  • 1.9-部署相關庫的安裝
  • 1.9.1-Docker的安裝
  • 1.9.2-Scrapyd的安裝
  • 1.9.3-Scrapyd-Client的安裝
  • 1.9.4-Scrapyd API的安裝
  • 1.9.5-Scrapyrt的安裝
  • 1.9.6-Gerapy的安裝
  • 2-爬蟲基礎
  • 2.1-HTTP基本原理
  • 2.2-網頁基礎
  • 2.3-爬蟲的基本原理
  • 2.4-會話和Cookies
  • 2.5-代理的基本原理
  • 3-基本庫的使用
  • 3.1-使用urllib
  • 3.1.1-發送請求
  • 3.1.2-處理異常
  • 3.1.3-解析鏈接
  • 3.1.4-分析Robots協議
  • 3.2-使用requests
  • 3.2.1-基本用法
  • 3.2.2-高級用法
  • 3.3-正則表達式
  • 3.4-抓取貓眼電影排行
  • 4-解析庫的使用
  • 4.1-使用XPath
  • 4.2-使用Beautiful Soup
  • 4.3-使用pyquery
  • 5-數據存儲
  • 5.1-文件存儲
  • 5.1.1-TXT文本存儲
  • 5.1.2-JSON文件存儲
  • 5.1.3-CSV文件存儲
  • 5.2-關係型資料庫存儲
  • 5.2.1-MySQL存儲
  • 5.3-非關係型資料庫存儲
  • 5.3.1-MongoDB存儲
  • 5.3.2-Redis存儲
  • 6-Ajax數據爬取
  • 6.1-什麼是Ajax
  • 6.2-Ajax分析方法
  • 6.3-Ajax結果提取
  • 6.4-分析Ajax爬取今日頭條街拍美圖
  • 7-動態渲染頁面爬取
  • 7.1-Selenium的使用
  • 7.2-Splash的使用
  • 7.3-Splash負載均衡配置
  • 7.4-使用Selenium爬取淘寶商品
  • 8-驗證碼的識別
  • 8.1-圖形驗證碼的識別
  • 8.2-極驗滑動驗證碼的識別
  • 8.3-點觸驗證碼的識別
  • 8.4-微博宮格驗證碼的識別
  • 9-代理的使用
  • 9.1-代理的設置
  • 9.2-代理池的維護
  • 9.3-付費代理的使用
  • 9.4-ADSL撥號代理
  • 9.5-使用代理爬取微信公眾號文章
  • 10-模擬登錄
  • 10.1-模擬登錄並爬取GitHub
  • 10.2-Cookies池的搭建
  • 11-App的爬取
  • 11.1-Charles的使用
  • 11.2-mitmproxy的使用
  • 11.3-mitmdump爬取「得到」App電子書信息
  • 11.4-Appium的基本使用
  • 11.5-Appium爬取微信朋友圈
  • 11.6-Appium+mitmdump爬取京東商品
  • 12-pyspider框架的使用
  • 12.1-pyspider框架介紹
  • 12.2-pyspider的基本使用
  • 12.3-pyspider用法詳解
  • 13-Scrapy框架的使用
  • 13.1-Scrapy框架介紹
  • 13.2-Scrapy入門
  • 13.3-Selector的用法
  • 13.4-Spider的用法
  • 13.5-Downloader Middleware的用法
  • 13.6-Spider Middleware的用法
  • 13.7-Item Pipeline的用法
  • 13.8-Scrapy對接Selenium
  • 13.9-Scrapy對接Splash
  • 13.10-Scrapy通用爬蟲
  • 13.11-Scrapyrt的使用
  • 13.12-Scrapy對接Docker
  • 13.13-Scrapy爬取新浪微博
  • 14-分散式爬蟲
  • 14.1-分散式爬蟲原理
  • 14.2-Scrapy-Redis源碼解析
  • 14.3-Scrapy分散式實現
  • 14.4-Bloom Filter的對接
  • 15-分散式爬蟲的部署
  • 15.1-Scrapyd分散式部署
  • 15.2-Scrapyd-Client的使用
  • 15.3-Scrapyd對接Docker
  • 15.4-Scrapyd批量部署
  • 15.5-Gerapy分散式管理

2018年3月預售,敬請期待,全書預覽圖:


本資源首發於崔慶才的個人博客靜覓:

Python3網路爬蟲開發實戰教程 | 靜覓?

cuiqingcai.com圖標

如想了解更多爬蟲資訊,請關注我的個人微信公眾號:進擊的Coder


謝邀。

個人愚見:

  • 理解HTTP協議(搞定對網頁的訪問請求)
  • 理解HTML、JSON、XML(搞定網頁解析)
  • 理解JavaScript渲染(搞定一些煩人的JS反爬手段)
  • 理解代理伺服器(搞定IP被封)
  • 理解資料庫(搞定數據存儲)
  • 理解以及其他的……(圖片驗證碼、數據加密等等)

之前寫了一個系列的爬蟲文章,有興趣可以看看:

(Python爬蟲實戰入門一:工具準備 - 州的先生zmister.com)

(Python爬蟲實戰入門二:從一個簡單的HTTP請求開始 - 州的先生zmister.com)

(Python爬蟲實戰入門三:簡單的HTML解析--爬取騰訊新聞 - 州的先生zmister.com)

(Python爬蟲實戰入門四:使用Cookie模擬登錄--獲取電子書下載鏈接 - 州的先生zmister.com)

(Python爬蟲實戰入門五:獲取JS動態內容-爬取今日頭條 - 州的先生zmister.com)

(Python爬蟲實戰入門六:提高爬蟲效率-並發爬取智聯招聘 - 州的先生zmister.com)

(Python爬蟲入門實戰七:使用Selenium--以抓取QQ空間好友說說為例 - 州的先生zmister.com)

(Python爬蟲入門實戰八:數據儲存--MongoDB與MySQL - 州的先生zmister.com)


謝邀。可恥的匿了。

題主看上去還沒有工作,單純從找工作的層面給題主指點方向。惶恐。

目前市面上爬蟲有兩種:

1) 大規模爬的,類似搜索引擎;(我認為這種是真正的的爬蟲)

2)網貸公司查詢別人的授信信息的,主要是業務(比較累)

就業來說,第二種要求多一些。我一直在干這個。

找工作的話,可以從第二種入手。

熟悉http協議。用fidder抓包。

熟悉一下requests,selenium,登陸自己的社保、網銀、手機運營商、京東、淘寶,抓取自己的交易記錄就可以找一個初級的工作了。一般這種工作都是堆人力,比較好找的。投p2p網貸公司。可能起薪會被壓得低一些。

這種工作干到高級,需要摸索一下python的熱載入(和被人改版作鬥爭,在此鄙視用java語言寫template的),資料庫(推薦mongodb),消息隊列,zookeeper。 估計天花板15k吧。在深圳。

另外一種我沒有干過工業級的。不多言。

PS: 爬蟲是個體力活,別人都在玩其他東西進步的時候,你要和其他網站 反爬作鬥爭 肉眼debug混淆的js。 一般壽命兩年(我已經到了, 掙扎跳槽中)。 在進入爬蟲工作的時候,需要根據個人興趣考慮 機器學習 ,轉web ,大數據等其他方向。

只有兩年的壽命。


如果只是簡單的爬取網頁信息,其實意義並不是很大。

一般來說爬蟲都是很多項目之中的一個組成部分,單一招爬蟲工程師的地方很少。

而且爬蟲一般需要的不是爬取信息,而是要結合你爬下來的信息的應用背景。

比如爬取價格信息做一個貨比三家的APP。

更重要的不是怎麼將網頁爬下來,更重要的是爬取信息去應用這些信息做別的事情。

所以我的推薦是,學習一個方向。然後做項目過程中用到爬蟲就去爬。

因為不同的爬蟲的應用背景,所需要爬蟲爬取信息的方式和模塊可能都不一樣。

以上是我的個人觀點。不要再看這個,可以結合具體的項目來。

比如我爬下信息來做什麼。找到真的目的。比如數據分析,還是天氣數據,還是價格信息做推薦系統?

做那些爬蟲只是其中一環,看幾天的教程可能就ok了。

當然如果你想做大一點的,比如搜索引擎,那麼搜索引擎中爬蟲也是其中的一環,爬蟲爬完之後要建立索引。而且還需要是分散式爬蟲。

那麼還是,你還需要針對操作引擎去學習對應的知識。

Come on!


推薦閱讀:

黃哥Python,再來一個凡是
幫小白飛速掌握Python的19個學習資源
數據清洗要了命?這有一份手把手Python攻略
Python在Finance上的應用-處理數據及製圖

TAG:Python | python爬蟲 |