精通 Python 网络爬虫:核心技术、框架与项目实战
內容簡介
本書從技術、工具與實戰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
總結
以上是生活随笔為你收集整理的精通 Python 网络爬虫:核心技术、框架与项目实战的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【GPU加速】安装pycuda异常:Fa
- 下一篇: 大疆工程师:如何利用6年时间成为一名优秀