精通 Python 網路爬蟲:核心技術、框架與專案實戰

蔚1發表於2018-11-06

內容簡介

本書從技術、工具與實戰3個維度講解了 Python 網路爬蟲:

  • 技術維度:詳細講解了 Python 網路爬蟲實現的核心技術,包括網路爬蟲的工作原理、如何用 urllib 庫編寫網路爬蟲、爬蟲的異常處理、正規表示式、爬蟲中 Cookie 的使用、爬蟲的瀏覽器偽裝技術、定向爬取技術、反爬蟲技術,以及如何自己動手編寫網路爬蟲;

  • 工具維度:以流行的 Python 網路爬蟲框架 Scrapy 為物件,詳細講解了 Scrapy 的功能使用、高階技巧、架構設計、實現原理,以及如何通過 Scrapy 來更便捷、高效地編寫網路爬蟲;

  • 實戰維度:以實戰為導向,是本書的主旨,除了完全通過手動程式設計實現網路爬蟲和通過 Scrapy 框架實現網路爬蟲的實戰案例以外,本書還有部落格爬取、圖片爬取、模擬登入等多個綜合性的網路爬蟲實踐案例。

作者簡介

韋瑋,資深網路爬蟲技術專家、大資料專家和軟體開發工程師,從事大型軟體開發與技術服務多年,現任重慶韜翔網路科技有限公司創始人兼 CEO,國家專利發明人。

精通 Python 技術,在 Python 網路爬蟲、Python 機器學習、Python 資料分析與挖掘、Python Web 開發等多個領域都有豐富的實戰經驗。

CSDN、51CTO、天善智慧等科技類社群和媒體的特邀專家和講師,輸出了大量的高質量課程和文章,深受使用者喜愛。

微博:http://weibo.com/qiansyy

本書內容

前言

為什麼寫這本書

網路爬蟲其實很早就出現了,最開始網路爬蟲主要應用在各種搜尋引擎中。在搜尋引擎中,主要使用通用網路爬蟲對網頁進行爬取及儲存。

隨著大資料時代的到來,我們經常需要在海量資料的網際網路環境中搜集一些特定的資料並對其進行分析,我們可以使用網路爬蟲對這些特定的資料進行爬取,並對一些無關的資料進行過濾,將目標資料篩選出來。對特定的資料進行爬取的爬蟲,我們將其稱為聚焦網路爬蟲。在大資料時代,聚焦網路爬蟲的應用需求越來越大。

目前在國內 Python 網路爬蟲的書籍基本上都是從國外引進翻譯的,國內的本版書籍屈指可數,故而我跟華章的副總編楊福川策劃了這本書。本書的撰寫過程中各方面的參考資料非常少,因此完成本書所花費的精力相對來說是非常大的。

本書從系統化的視角,為那些想學習 Python 網路爬蟲或者正在研究 Python 網路爬蟲的朋友們提供了一個全面的參考,讓讀者可以系統地學習 Python 網路爬蟲的方方面面,在理解並掌握了本書的例項之後,能夠獨立編寫出自己的 Python 網路爬蟲專案,並且能夠勝任 Python 網路爬蟲工程師相關崗位的工作。

同時,本書的另一個目的是,希望可以給大資料或者資料探勘方向的從業者一定的參考,以幫助這些讀者從海量的網際網路資訊中爬取需要的資料。所謂巧婦難為無米之炊,有了這些資料之後,從事大資料或者資料探勘方向工作的讀者就可以進行後續的分析處理了。

本書的主要內容和特色

本書是一本系統介紹 Python 網路爬蟲的書籍,全書注重實戰,涵蓋網路爬蟲原理、如何手寫 Python 網路爬蟲、如何使用 Scrapy 框架編寫網路爬蟲專案等關於 Python 網路爬蟲的方方面面。

本書的主要特色如下:

  • 系統講解 Python 網路爬蟲的編寫方法,體系清晰。

  • 結合實戰,讓讀者能夠從零開始掌握網路爬蟲的基本原理,學會編寫 Python 網路爬蟲以及 Scrapy 爬蟲專案,從而編寫出通用爬蟲及聚焦爬蟲,並掌握常見網站的爬蟲反遮蔽手段。

  • 有配套免費視訊,對於書中的難點,讀者可以直接觀看作者錄製的對應視訊,加深理解。

  • 擁有多個爬蟲專案編寫案例,比如部落格類爬蟲專案案例、圖片類爬蟲專案案例、模擬登入爬蟲專案等。除此之外,還有很多不同種類的爬蟲案例,可以讓大家在理解這些案例之後學會各種型別爬蟲的編寫方法。

總之,在理解本書內容並掌握書中例項之後,讀者將能勝任 Python 網路爬蟲工程師方向的工作並學會各種型別網路爬蟲專案的編寫。此外,本書對於大資料或資料探勘方向的從業者也非常有幫助,比如可以利用 Python 網路爬蟲輕鬆獲取所需的資料資訊等。

本書面向的讀者

  • Python 網路爬蟲初學者

  • 網路爬蟲工程師

  • 大資料及資料探勘工程師

  • 高校計算機專業的學生

  • 其他對 Python 或網路爬蟲感興趣的人員

如何閱讀本書

本書分為四篇,共計20章。

第一篇為理論基礎篇(第1~2章),主要介紹了網路爬蟲的基礎知識,讓大家從零開始對網路爬蟲有一個比較清晰的認識。

第二篇為核心技術篇(第3~9章),詳細介紹了網路爬蟲實現的核心技術,包括網路爬蟲的工作原理、如何用 Urllib 庫編寫網路爬蟲、爬蟲的異常處理、正規表示式、爬蟲中 Cookie 的使用、手寫糗事百科爬蟲、手寫連結爬蟲、手寫微信爬蟲、手寫多執行緒爬蟲、瀏覽器偽裝技術、Python 網路爬蟲的定向爬取技術及例項等。學完這一部分內容,讀者就可以寫出自己的爬蟲了。這部分的爬蟲編寫採用的是一步步純手寫的方式進行的,沒有采用框架。

第三篇為框架實現篇(第10~17章),主要詳細介紹瞭如何用框架實現 Python 網路爬蟲專案。使用框架實現 Python 網路爬蟲專案相較於手寫方式更加便捷,主要包括 Python 爬蟲框架分類、Scrapy 框架在各系統中的安裝以及如何避免各種“坑”、如何用 Scrapy 框架編寫爬蟲專案、Scrapy 框架架構詳解、Scrapy 的中文輸出與儲存、在 Scrapy 中如何使用 for 迴圈實現自動網頁爬蟲、如何通過 CrawlSpider 實現自動網頁爬蟲、如何將爬取的內容寫進資料庫等。其中第12章為基礎部分,讀者需要著重掌握。

第四篇為專案實戰篇(第18~20章),分別講述了部落格類爬蟲專案、圖片類爬蟲專案、模擬登入爬蟲專案的程式設計及實現。其中,也會涉及驗證碼處理等方面的難點知識,幫助讀者通過實際的專案掌握網路爬蟲專案的編寫。

勘誤和支援

由於作者的水平有限,書中難免有一些錯誤或不準確的地方,懇請各位讀者不吝指正。

相關建議各位可以通過微博@韋瑋pig 或通過 QQ 公眾號 a67899 或微信公眾平臺 weijc7789(可以直接掃描下方二維碼新增)進行反饋,也可以直接向郵箱 ceo@iqianyue.com 傳送郵件,期待能夠收到各位讀者的意見和建議,歡迎來信。

掃描關注 QQ 公眾號

掃描關注微信公眾號

致謝

感謝機械工業出版社華章公司的副總編楊福川老師與編輯李藝老師,在近一年的時間裡,是你們一次次在我遇到困難的時候,給予我鼓勵,讓我可以堅持寫下去。創作一本圖書是非常艱苦的,除了技術知識等因素之外,還需要非常大的毅力。特別感謝楊福川在寫作過程中對我各方面的支援,尤其是對我毅力的培養。

感謝 CSDN、51CTO 與極客學院,因為你們,讓我在這個領域獲得了更多的學員與支援。

感謝恩師何雲景教授對我創業方面的幫助,因為有您,我才擁有了一個更好的創業開端及工作環境。

特別緻謝

最後,需要特別感謝的是我的女友,因為編寫這本書,少了很多陪你的時間,感謝你的不離不棄與理解包容。希望未來可以加倍彌補你那些錯過吃的美食和那些錯過逛的街道。

同時,也要感謝你幫我完成書稿的校對工作,謝謝你的付出與支援。因為有了你默默的付出,我才能堅定地走下去;因為有了你不斷的支援,我才可以安心地往前衝。

感謝爺爺從小對我人生觀、價值觀的培養,您是一個非常有思想的人。

感謝遠方的父母、叔叔、姐姐,那些親情的陪伴是我最珍貴的財富。

謹以此書獻給熱愛 Python 的朋友們!

第一篇 理論基礎篇
  • 第1章 什麼是網路爬蟲

  • 第2章 網路爬蟲技能總覽

網路爬蟲也叫做網路機器人,可以代替人們自動地在網際網路中進行資料資訊的採集與整理。在大資料時代,資訊的採集是一項重要的工作,如果單純靠人力進行資訊採集,不僅低效繁瑣,蒐集的成本也會提高。此時,我們可以使用網路爬蟲對資料資訊進行自動採集,比如應用於搜尋引擎中對站點進行爬取收錄,應用於資料分析與挖掘中對資料進行採集,應用於金融分析中對金融資料進行採集,除此之外,還可以將網路爬蟲應用於輿情監測與分析、目標客戶資料的收集等各個領域。當然,要學習網路爬蟲開發,首先需要認識網路爬蟲,在本篇中,我們將帶領大家一起認識幾種典型的網路爬蟲,並瞭解網路爬蟲的各項常見功能。

第1章 什麼是網路爬蟲

隨著大資料時代的來臨,網路爬蟲在網際網路中的地位將越來越重要。網際網路中的資料是海量的,如何自動高效地獲取網際網路中我們感興趣的資訊併為我們所用是一個重要的問題,而爬蟲技術就是為了解決這些問題而生的。我們感興趣的資訊分為不同的型別:如果只是做搜尋引擎,那麼感興趣的資訊就是網際網路中儘可能多的高質量網頁;如果要獲取某一垂直領域的資料或者有明確的檢索需求,那麼感興趣的資訊就是根據我們的檢索和需求所定位的這些資訊,此時,需要過濾掉一些無用資訊。前者我們稱為通用網路爬蟲,後者我們稱為聚焦網路爬蟲。

1.1 初識網路爬蟲

網路爬蟲又稱網路蜘蛛、網路螞蟻、網路機器人等,可以自動化瀏覽網路中的資訊,當然瀏覽資訊的時候需要按照我們制定的規則進行,這些規則我們稱之為網路爬蟲演算法。使用 Python 可以很方便地編寫出爬蟲程式,進行網際網路資訊的自動化檢索。

搜尋引擎離不開爬蟲,比如百度搜尋引擎的爬蟲叫作百度蜘蛛(Baiduspider)。百度蜘蛛每天會在海量的網際網路資訊中進行爬取,爬取優質資訊並收錄,當使用者在百度搜尋引擎上檢索對應關鍵詞時,百度將對關鍵詞進行分析處理,從收錄的網頁中找出相關網頁,按照一定的排名規則進行排序並將結果展現給使用者。在這個過程中,百度蜘蛛起到了至關重要的作用。那麼,如何覆蓋網際網路中更多的優質網頁?又如何篩選這些重複的頁面?這些都是由百度蜘蛛爬蟲的演算法決定的。採用不同的演算法,爬蟲的執行效率會不同,爬取結果也會有所差異。所以,我們在研究爬蟲的時候,不僅要了解爬蟲如何實現,還需要知道一些常見爬蟲的演算法,如果有必要,我們還需要自己去制定相應的演算法,這些在後面都會為大家詳細地講解,在此,我們僅需要對爬蟲的概念有一個基本的瞭解。

除了百度搜尋引擎離不開爬蟲以外,其他搜尋引擎也離不開爬蟲,它們也擁有自己的爬蟲。比如360的爬蟲叫 360Spider,搜狗的爬蟲叫 Sogouspider,必應的爬蟲叫 Bingbot。

如果想自己實現一款小型的搜尋引擎,我們也可以編寫出自己的爬蟲去實現,當然,雖然可能在效能或者演算法上比不上主流的搜尋引擎,但是個性化的程度會非常高,並且也有利於我們更深層次地理解搜尋引擎內部的工作原理。

大資料時代也離不開爬蟲,比如在進行大資料分析或資料探勘時,我們可以去一些比較大型的官方站點下載資料來源。但這些資料來源比較有限,那麼如何才能獲取更多更高質量的資料來源呢?此時,我們可以編寫自己的爬蟲程式,從網際網路中進行資料資訊的獲取。所以在未來,爬蟲的地位會越來越重要。

1.2 為什麼要學網路爬蟲

在上一節中,我們初步認識了網路爬蟲,但是為什麼要學習網路爬蟲呢?要知道,只有清晰地知道我們的學習目的,才能夠更好地學習這一項知識,所以在這一節中,我們將會為大家分析一下學習網路爬蟲的原因。

當然,不同的人學習爬蟲,可能目的有所不同,在此,我們總結了4種常見的學習爬蟲的原因。

1)學習爬蟲,可以私人訂製一個搜尋引擎,並且可以對搜尋引擎的資料採集工作原理進行更深層次地理解。

有的朋友希望能夠深層次地瞭解搜尋引擎的爬蟲工作原理,或者希望自己能夠開發出一款私人搜尋引擎,那麼此時,學習爬蟲是非常有必要的。簡單來說,我們學會了爬蟲編寫之後,就可以利用爬蟲自動地採集網際網路中的資訊,採集回來後進行相應的儲存或處理,在需要檢索某些資訊的時候,只需在採集回來的資訊中進行檢索,即實現了私人的搜尋引擎。當然,資訊怎麼爬取、怎麼儲存、怎麼進行分詞、怎麼進行相關性計算等,都是需要我們進行設計的,爬蟲技術主要解決資訊爬取的問題。

2)大資料時代,要進行資料分析,首先要有資料來源,而學習爬蟲,可以讓我們獲取更多的資料來源,並且這些資料來源可以按我們的目的進行採集,去掉很多無關資料。

在進行大資料分析或者進行資料探勘的時候,資料來源可以從某些提供資料統計的網站獲得,也可以從某些文獻或內部資料中獲得,但是這些獲得資料的方式,有時很難滿足我們對資料的需求,而手動從網際網路中去尋找這些資料,則耗費的精力過大。此時就可以利用爬蟲技術,自動地從網際網路中獲取我們感興趣的資料內容,並將這些資料內容爬取回來,作為我們的資料來源,從而進行更深層次的資料分析,並獲得更多有價值的資訊。

3)對於很多 SEO 從業者來說,學習爬蟲,可以更深層次地理解搜尋引擎爬蟲的工作原理,從而可以更好地進行搜尋引擎優化。

既然是搜尋引擎優化,那麼就必須要對搜尋引擎的工作原理非常清楚,同時也需要掌握搜尋引擎爬蟲的工作原理,這樣在進行搜尋引擎優化時,才能知己知彼,百戰不殆。

4)從就業的角度來說,爬蟲工程師目前來說屬於緊缺人才,並且薪資待遇普遍較高,所以,深層次地掌握這門技術,對於就業來說,是非常有利的。

有些朋友學習爬蟲可能為了就業或者跳槽。從這個角度來說,爬蟲工程師方向是不錯的選擇之一,因為目前爬蟲工程師的需求越來越大,而能夠勝任這方面崗位的人員較少,所以屬於一個比較緊缺的職業方向,並且隨著大資料時代的來臨,爬蟲技術的應用將越來越廣泛,在未來會擁有很好的發展空間。

除了以上為大家總結的4種常見的學習爬蟲的原因外,可能你還有一些其他學習爬蟲的原因,總之,不管是什麼原因,理清自己學習的目的,就可以更好地去研究一門知識技術,並堅持下來。

1.3 網路爬蟲的組成

接下來,我們將介紹網路爬蟲的組成。網路爬蟲由控制節點、爬蟲節點、資源庫構成。

圖1-1所示是網路爬蟲的控制節點和爬蟲節點的結構關係。

圖1-1 網路爬蟲的控制節點和爬蟲節點的結構關係

可以看到,網路爬蟲中可以有多個控制節點,每個控制節點下可以有多個爬蟲節點,控制節點之間可以互相通訊,同時,控制節點和其下的各爬蟲節點之間也可以進行互相通訊,屬於同一個控制節點下的各爬蟲節點間,亦可以互相通訊。

控制節點,也叫作爬蟲的中央控制器,主要負責根據 URL 地址分配執行緒,並呼叫爬蟲節點進行具體的爬行。

爬蟲節點會按照相關的演算法,對網頁進行具體的爬行,主要包括下載網頁以及對網頁的文字進行處理,爬行後,會將對應的爬行結果儲存到對應的資源庫中。

1.4 網路爬蟲的型別

現在我們已經基本瞭解了網路爬蟲的組成,那麼網路爬蟲具體有哪些型別呢?

網路爬蟲按照實現的技術和結構可以分為通用網路爬蟲、聚焦網路爬蟲、增量式網路爬蟲、深層網路爬蟲等型別。在實際的網路爬蟲中,通常是這幾類爬蟲的組合體。

首先我們為大家介紹通用網路爬蟲(General Purpose Web Crawler)。通用網路爬蟲又叫作全網爬蟲,顧名思義,通用網路爬蟲爬取的目標資源在全網際網路中。通用網路爬蟲所爬取的目標資料是巨大的,並且爬行的範圍也是非常大的,正是由於其爬取的資料是海量資料,故而對於這類爬蟲來說,其爬取的效能要求是非常高的。這種網路爬蟲主要應用於大型搜尋引擎中,有非常高的應用價值。

通用網路爬蟲主要由初始 URL 集合、URL 佇列、頁面爬行模組、頁面分析模組、頁面資料庫、連結過濾模組等構成。通用網路爬蟲在爬行的時候會採取一定的爬行策略,主要有深度優先爬行策略和廣度優先爬行策略。具體的爬行策略,我們將在第3章講解,在此,我們只需要知道通用網路爬蟲的基本構成和主要的爬行策略。

聚焦網路爬蟲(Focused Crawler)也叫主題網路爬蟲,顧名思義,聚焦網路爬蟲是按照預先定義好的主題有選擇地進行網頁爬取的一種爬蟲,聚焦網路爬蟲不像通用網路爬蟲一樣將目標資源定位在全網際網路中,而是將爬取的目標網頁定位在與主題相關的頁面中,此時,可以大大節省爬蟲爬取時所需的頻寬資源和伺服器資源。聚焦網路爬蟲主要應用在對特定資訊的爬取中,主要為某一類特定的人群提供服務。

聚焦網路爬蟲主要由初始 URL 集合、URL 佇列、頁面爬行模組、頁面分析模組、頁面資料庫、連結過濾模組、內容評價模組、連結評價模組等構成。內容評價模組可以評價內容的重要性,同理,連結評價模組也可以評價出連結的重要性,然後根據連結和內容的重要性,可以確定哪些頁面優先訪問。聚焦網路爬蟲的爬行策略主要有4種,即基於內容評價的爬行策略、基於連結評價的爬行策略、基於增強學習的爬行策略和基於語境圖的爬行策略。關於聚焦網路爬蟲具體的爬行策略,我們將在1.5節進行詳細分析。

增量式網路爬蟲(Incremental Web Crawler),所謂增量式,對應著增量式更新。增量式更新指的是在更新的時候只更新改變的地方,而未改變的地方則不更新,所以增量式網路爬蟲,在爬取網頁的時候,只爬取內容發生變化的網頁或者新產生的網頁,對於未發生內容變化的網頁,則不會爬取。增量式網路爬蟲在一定程度上能夠保證所爬取的頁面,儘可能是新頁面。

深層網路爬蟲(Deep Web Crawler),可以爬取網際網路中的深層頁面,在此我們首先需要了解深層頁面的概念。

在網際網路中,網頁按存在方式分類,可以分為表層頁面和深層頁面。所謂的表層頁面,指的是不需要提交表單,使用靜態的連結就能夠到達的靜態頁面;而深層頁面則隱藏在表單後面,不能通過靜態連結直接獲取,是需要提交一定的關鍵詞之後才能夠獲取得到的頁面。在網際網路中,深層頁面的數量往往比表層頁面的數量要多很多,故而,我們需要想辦法爬取深層頁面。

爬取深層頁面,需要想辦法自動填寫好對應表單,所以,深層網路爬蟲最重要的部分即為表單填寫部分。

深層網路爬蟲主要由 URL 列表、LVS 列表(LVS 指的是標籤/數值集合,即填充表單的資料來源)、爬行控制器、解析器、LVS 控制器、表單分析器、表單處理器、響應分析器等部分構成。

深層網路爬蟲表單的填寫有兩種型別:第一種是基於領域知識的表單填寫,簡單來說就是建立一個填寫表單的關鍵詞庫,在需要填寫的時候,根據語義分析選擇對應的關鍵詞進行填寫;第二種是基於網頁結構分析的表單填寫,簡單來說,這種填寫方式一般是領域知識有限的情況下使用,這種方式會根據網頁結構進行分析,並自動地進行表單填寫。

以上,為大家介紹了網路爬蟲中常見的幾種型別,希望讀者能夠對網路爬蟲的分類有一個基本的瞭解。

1.5 爬蟲擴充套件——聚焦爬蟲

由於聚焦爬蟲可以按對應的主題有目的地進行爬取,並且可以節省大量的伺服器資源和頻寬資源,具有很強的實用性,所以在此,我們將對聚焦爬蟲進行詳細講解。圖1-2所示為聚焦爬蟲執行的流程,熟悉該流程後,我們可以更清晰地知道聚焦爬蟲的工作原理和過程。

首先,聚焦爬蟲擁有一個控制中心,該控制中心負責對整個爬蟲系統進行管理和監控,主要包括控制使用者互動、初始化爬行器、確定主題、協調各模組之間的工作、控制爬行過程等方面。

然後,將初始的 URL 集合傳遞給 URL 佇列,頁面爬行模組會從 URL 佇列中讀取第一批 URL 列表,然後根據這些 URL 地址從網際網路中進行相應的頁面爬取。爬取後,將爬取到的內容傳到頁面資料庫中儲存,同時,在爬行過程中,會爬取到一些新的 URL,此時,需要根據我們所定的主題使用連結過濾模組過濾掉無關連結,再將剩下來的 URL 連結根據主題使用連結評價模組或內容評價模組進行優先順序的排序。完成後,將新的 URL 地址傳遞到 URL 佇列中,供頁面爬行模組使用。另一方面,將頁面爬取並存放到頁面資料庫後,需要根據主題使用頁面分析模組對爬取到的頁面進行頁面分析處理,並根據處理結果建立索引資料庫,使用者檢索對應資訊時,可以從索引資料庫中進行相應的檢索,並得到對應的結果。

圖1-2 聚焦爬蟲執行的流程

這就是聚焦爬蟲的主要工作流程,瞭解聚焦爬蟲的主要工作流程有助於我們編寫聚焦爬蟲,使編寫的思路更加清晰。

1.6 小結

1)網路爬蟲也叫作網路蜘蛛、網路螞蟻、網路機器人等,可以自動地瀏覽網路中的資訊,當然瀏覽資訊的時候需要按照我們制定的規則去瀏覽,這些規則我們將其稱為網路爬蟲演算法。使用 Python 可以很方便地編寫出爬蟲程式,進行網際網路資訊的自動化檢索。

2)學習爬蟲,可以:①私人訂製一個搜尋引擎,並且可以對搜尋引擎的資料採集工作原理,進行更深層次地理解;②為大資料分析提供更多高質量的資料來源;③更好地研究搜尋引擎優化;④解決就業或跳槽的問題。

3)網路爬蟲由控制節點、爬蟲節點、資源庫構成。

4)網路爬蟲按照實現的技術和結構可以分為通用網路爬蟲、聚焦網路爬蟲、增量式網路爬蟲、深層網路爬蟲等型別。在實際的網路爬蟲中,通常是這幾類爬蟲的組合體。

5)聚焦網路爬蟲主要由初始 URL 集合、URL 佇列、頁面爬行模組、頁面分析模組、頁面資料庫、連結過濾模組、內容評價模組、連結評價模組等構成。

第2章 網路爬蟲技能總覽
第二篇 核心技術篇
第3章 網路爬蟲實現原理與實現技術(上)
第3章 網路爬蟲實現原理與實現技術(下)
第4章 Urllib 庫與 URLError 異常處理(上)
第4章 Urllib 庫與 URLError 異常處理(下)
第5章 正規表示式與 Cookie 的使用(上)
第5章 正規表示式與 Cookie 的使用(下)
第6章 手寫 Python 爬蟲(上)
第6章 手寫 Python 爬蟲(下)
第7章 學會使用 Fiddler (上)
第7章 學會使用 Fiddler (下)
第8章 爬蟲的瀏覽器偽裝技術
第9章 爬蟲的定向爬取技術
第三篇 框架實現篇
第10章 瞭解 Python 爬蟲框架
第11章 爬蟲利器——Scrapy 安裝與配置
第12章 開啟 Scrapy 爬蟲專案之旅(上)
第12章 開啟 Scrapy 爬蟲專案之旅(中)
第12章 開啟 Scrapy 爬蟲專案之旅(下)
第13章 Scrapy 核心架構
第14章 Scrapy 中文輸出與儲存
第15章 編寫自動爬取網頁的爬蟲
第16章 CrawlSpider
第17章 Scrapy 高階應用
第四篇 專案實戰篇
第18章 部落格類爬蟲專案
第19章 圖片類爬蟲專案
第20章 模擬登入爬蟲專案

閱讀全文: http://gitbook.cn/gitchat/geekbook/5b7103e3dcc9492d208237a8

相關文章