比Selenium還強大的網路爬蟲:Scrapy一本就精通

  • 9 522
    580

配送方式

  • 台灣
    • 國內宅配:本島、離島
    • 到店取貨:
      金石堂門市 不限金額免運費
      7-11便利商店 ok便利商店 萊爾富便利商店 全家便利商店
  • 海外
    • 國際快遞:全球
    • 港澳店取:
      ok便利商店 順豐 7-11便利商店

內容簡介

本書說明目前最流行的Python 爬蟲架構Scrapy,它簡單好用、靈活易擴充、文件豐富、開發社區活躍,使用Scrapy 可以高效率地開發網路爬蟲應用。本書的讀者只需要有Python 語言基礎即可,我們從零基礎、逐步由淺入深說明。

全書共14章,系統地介紹Python流行框架Scrapy的相關技術及使用技巧。第1~8 章說明Scrapy 開發的核心基礎部分,重點介紹Scrapy的核心元素,如spider、selector、item、link等。

第9~14 章說明實際爬蟲開發中使用頻率最高的一些實用技術,如下載檔案和圖片、模擬登入、執行JavaScript、爬取動態網頁、使用HTTP代理、分散式爬蟲的編寫等內容。

本書主要特色:

■ 所有基礎部分的說明都配有程式範例,而不僅是枯燥的文件。

■ 案例選材方面以說明基礎知識為核心,儘量選擇專門供練習爬蟲技術的網站(不易變動)或接近日常生活的網站(京東、知乎、豆瓣、360)進行示範。

■ 在說明某些基礎知識時,對Scrapy原始程式進行分析,讓讀者能夠「知其然並知其所以然」。    

適用:適合有一定Python語言基礎,想學習編寫複雜網路爬蟲的讀者。

作者

劉碩

 

曾任職知名外企,從事一線開發工作10年,目前主要從事Python開發與教學工作,在慕課網開設多門Python課程,深受學員歡迎。

目錄

01  初識Scrapy    

1.1 網路爬蟲是什麼

1.2 Scrapy 簡介及安裝

1.3 撰寫第一個Scrapy 爬蟲

1.4 本章小結 

02  撰寫Spider     

2.1 Scrapy 架構結構及工作原理

2.2 Request 和Response 物件

2.3 Spider 開發流程

2.4 本章小結 

03  使用Selector 分析資料 

3.1 Selector 物件

3.2 Response 內建Selector    

3.3 XPath

3.4 CSS 選擇器

3.5 本章小結 

04  使用Item 封裝資料       

4.1 Item 和Field

4.2 擴充Item 子類別

4.3 Field 中繼資料

4.4 本章小結 

05  使用Item Pipeline 處理資料 

5.1 Item Pipeline

5.2 更多實例

5.3 本章小結 

06  使用LinkExtractor 分析連結      

6.1 使用LinkExtractor

6.2 描述分析規則

6.3 本章小結 

07  使用Exporter 匯出資料       

7.1 指定如何匯出資料  

7.2 增加匯出資料格式

7.3 本章小結 

08  專案練習

8.1 專案需求

8.2 頁面分析

8.3 程式實現

8.4 本章小結 

09 下載檔案和圖片

9.1 FilesPipeline 和ImagesPipeline

9.2 專案實戰:爬取matplotlib 實例原始程式檔案

9.3 專案實戰:下載360 圖片

9.4 本章小結 

10  模擬登入

10.1 登入實質

10.2 Scrapy 模擬登入

10.3 識別驗證碼

10.4 Cookie 登入

10.5 本章小結

11 爬取動態頁面

11.1 Splash 繪製引擎

11.2 在Scrapy 中使用Splash

11.3 專案實戰:爬取toscrape 中的名人名言

11.4 專案實戰:爬取京東商場中的書籍資訊

11.5 本章小結

12  存入資料庫

12.1 SQLite

12.2 MySQL   

12.3 MongoDB

12.4 Redis

12.5 本章小結

13  使用HTTP 代理

13.1 HttpProxyMiddleware

13.2 使用多個代理

13.3 取得免費代理

13.4 實現隨機代理

13.5 專案實戰:爬取豆瓣電影資訊

13.6 本章小結

14  分散式爬取

14.1 Redis 的使用

14.2 scrapy-redis 原始程式分析

14.3 使用scrapy-redis 進行分散式爬取

14.4 本章小結

序/導讀

前  言

✤ 關於本書

如今是網際網路的時代,而且正在邁入智慧時代。人們早已意識到網際網

路中的資料是有待開採的極大金礦,這些資料將改善我們的生活,網路爬

蟲開發工作職位的出現和不斷增加正是以對資料價值為基礎的重視。優秀

的爬蟲架構就像是開採金礦的強力採擷機,如果你能嫺熟地駕駛它們,就

能大幅加強開採效率。

本書說明目前最流行的Python 爬蟲架構Scrapy,它簡單好用、靈活易擴

充、文件豐富、開發社區活躍,使用Scrapy 可以高效率地開發網路爬蟲應用。本書的讀者只需要有Python 語言基礎即可,我們從零基礎、逐步由淺入深說明。第1~8 章說明Scrapy 開發的核心基礎部分,其中包含:

■ 初識Scrapy

■ 撰寫Spider

■ 使用Selector分析資料

■ 使用Item封裝資料

■ 使用Item Pipeline處理資料

■ 使用Link Extractor分析連結

■ 使用Exporter匯出資料

■ 專案練習

第9~14 章說明實際爬蟲開發中使用頻率最高的一些實用技術,其中包含:

■ 下載檔案和圖片

■ 模擬登入

■ 爬取動態頁面

■ 存入資料庫

■ 使用HTTP代理

■ 分散式爬取

✤ 本書特色

本書的宗旨是以實用和實戰為教學目標,主要特色是:

■ 所有基礎部分的說明都配有程式範例,而不僅是枯燥的文件。

■ 案例選材方面以說明基礎知識為核心,儘量選擇專門供練習爬蟲技術的網站(不易變動)或接近日常生活的網站(京東、知乎、豆瓣、360)進行示範。

■ 在說明某些基礎知識時,對Scrapy原始程式進行分析,讓讀者能夠「知其然並知其所以然」。

Python 是一種簡單易學、功能強大、開發效率極高的語言,近年來在網路爬蟲、資料分析、機器學習等領域獲得廣泛認可。雖然Python上手容易,但想靈活恰當地運用它也並不簡單。作者在慕課網(www.imooc.com)上推出一套《Python 高級進階實戰》課程,可供有需求的讀者進行參考:http://coding.imooc.com/class/62.html。

✤ 致謝

感謝康爍和陳渝老師在清華大學資訊研究院工作期間對我在專業方面的耐心指導。

感謝清華大學出版社的王金柱編輯給予我這次寫作的機會以及在寫作方面的指點。

感謝同事趙佳音認真閱讀全書並提出了許多的寶貴建議。

感謝劍超和任怡同學認真審稿全書,並對書中程式在多個Python 版本上進行測試。

感謝女兒劉真,她的笑容化解了寫作本書時偶爾的小煩躁。

詳細資料

詳細資料

    • 語言
    • 中文繁體
    • 裝訂
    • 紙本平裝
    • ISBN
    • 9789863796619
    • 分級
    • 普通級
    • 頁數
    • 288
    • 商品規格
    • 23*17
    • 出版地
    • 台灣
    • 適讀年齡
    • 全齡適讀
    • 注音
    • 級別

商品評價

訂購/退換貨須知

加入金石堂 LINE 官方帳號『完成綁定』,隨時掌握出貨動態:

加入金石堂LINE官方帳號『完成綁定』,隨時掌握出貨動態
金石堂LINE官方帳號綁定教學

提醒您!!
金石堂及銀行均不會請您操作ATM! 如接獲電話要求您前往ATM提款機,請不要聽從指示,以免受騙上當!

退換貨須知:

**提醒您,鑑賞期不等於試用期,退回商品須為全新狀態**

  • 依據「消費者保護法」第19條及行政院消費者保護處公告之「通訊交易解除權合理例外情事適用準則」,以下商品購買後,除商品本身有瑕疵外,將不提供7天的猶豫期:
    1. 易於腐敗、保存期限較短或解約時即將逾期。(如:生鮮食品)
    2. 依消費者要求所為之客製化給付。(客製化商品)
    3. 報紙、期刊或雜誌。(含MOOK、外文雜誌)
    4. 經消費者拆封之影音商品或電腦軟體。
    5. 非以有形媒介提供之數位內容或一經提供即為完成之線上服務,經消費者事先同意始提供。(如:電子書、電子雜誌、下載版軟體、虛擬商品…等)
    6. 已拆封之個人衛生用品。(如:內衣褲、刮鬍刀、除毛刀…等)
  • 若非上列種類商品,均享有到貨7天的猶豫期(含例假日)。
  • 辦理退換貨時,商品(組合商品恕無法接受單獨退貨)必須是您收到商品時的原始狀態(包含商品本體、配件、贈品、保證書、所有附隨資料文件及原廠內外包裝…等),請勿直接使用原廠包裝寄送,或於原廠包裝上黏貼紙張或書寫文字。
  • 退回商品若無法回復原狀,將請您負擔回復原狀所需費用,嚴重時將影響您的退貨權益。
金石堂門市 全家便利商店 ok便利商店 萊爾富便利商店 7-11便利商店
World wide