偏不讓你抓:最強Python 爬蟲vs反爬蟲大戰實錄
偏不讓你抓:最強Python 爬蟲vs反爬蟲大戰實錄
本書重點
爬蟲大戰,爾虞我詐,利用熟練的Python3瀏覽器知識,加上人工智慧
的幫助,讓百度、微軟、Google都沒辦法從你的網站爬走一點點資料!
資訊型反爬蟲、動態繪製反爬蟲、文字混淆反爬蟲、特徵識別反爬蟲、app反爬蟲、程式混淆反爬蟲、驗證碼反爬蟲,再強大的爬蟲機器人也就地當機!
本書主要內容
本書共10 章,首先對各種反爬蟲技術進行合理的歸類,然後透過剖析多個案例幫助讀者了解各種反爬蟲技術的原理。內容包含但不限於Cookie反爬蟲、WebSocket反爬蟲、字型反爬蟲、WebDriver反爬蟲、App反爬蟲、驗證碼反爬蟲,幾乎涵蓋市面上所有的反爬蟲技術類型,內容十分詳盡。另外,還針對各種反爬蟲列出對應的繞過和破解方案。
從開發環境設定到原理,再到實際的反爬蟲案例剖析,內容循序漸進。建議讀者按照章節順序閱讀,並在閱讀過程中親自動手練習。
內容如下:
►第1 章 介紹本書所相關的大部分開發環境設定,需要時查閱即可。
►第2 章 介紹Web 網站的組成和頁面繪製。了解伺服器端、用戶端的組成,工作形式和通訊協定。
►第3 章 簡單說明動態網頁和靜態網頁對爬蟲造成的影響,並對反爬蟲概念進行介紹和約定。
►第4 章 以資訊驗證型反爬蟲為主線,說明基於HTTP 協定和WebSocket 協定對用戶端請求進行驗證的反爬蟲原理和具體實作方法,並以爬蟲工程師的角度示範繞過過程。
►第5 章 介紹常見的動態繪製反爬蟲,透過場景假設的方式來說明不同需求的應對方法。
►第6 章 介紹目前被廣泛使用的文字混淆反爬蟲知識,包含圖片偽裝、CSS 偏移、SVG 對映和字型反爬蟲等。以爬蟲工程師的角度示範繞過過程,再剖析其原理。最後討論文字混淆反爬蟲的通用解決方法。
►第7 章 介紹特徵識別反爬蟲,包含繞過過程和實現原理。特徵識別反爬蟲具有一定的隱蔽性。它在爬蟲程式發起時識別和過濾,能有效地減輕伺服器的壓力。
►第8 章 介紹App資料爬取的關鍵和常用的反爬蟲方法,包含程式混淆、參數加密和安全強化等,同時還介紹封包截取和App逆向方面的知識。
►第9 章 驗證碼相關的內容,包含市面上常見的驗證碼類型,每個驗證碼案例均以爬蟲工程師的角度示範繞過過程,再以開發者的角度示範驗證碼的實現過程。部分驗證碼的繞過用到了深度學習中的卷積神經網路和用於目標檢測的YOLO 演算法,並對商用驗證碼廠商的產品進行基本介紹和難度分析。
►第10 章 綜合知識的介紹。如常見的編碼和加密原理,並以對應的RFC 文件為基礎,說明編碼、解碼、加密和解密的過程。然後介紹常見的JavaScript 程式混淆知識,並動手實現一個簡單的混淆器。接著學習前端禁止事件方面的知識,如禁止滑鼠右鍵、禁止鍵盤按鍵等。最後透過幾個案例了解與爬蟲相關的法律知識和風險點。
適合讀者群 爬蟲工程師、反爬蟲工程師、開發者,或對爬蟲、反爬蟲感興趣的讀者。
本書特色
◎ 系統說明爬蟲和反爬蟲技術
◎ 爬蟲工程師不可錯過的武功秘笈
◎ 幫你從0到1理清爬蟲與反爬蟲的紅藍對抗