首頁>科技>

這本書不僅能夠幫助爬蟲工程師了解到反爬蟲的原理和繞過之法,還能夠讓開發人員認識到爬蟲工程師怕的是什麼。爬蟲和反爬蟲都是綜合技術的應用,擁有全面的知識和技術能力才能夠設計出效果超群的策略。

與爬蟲技術相關的文章非常多,但鮮有人深入探究背後的原理。這本《Python3 反爬蟲原理與繞過實戰》從爬蟲和開發者兩個角度描述了爬蟲與反爬蟲的對抗,由淺入深地介紹了目前市面上使用到的大部分反爬蟲手段的知識,從原理到分析再到繞過,一步步探尋反爬蟲的細枝末節。

以劍養劍,攻守兼備才能夠在技術的江湖路上任逍遙。

《Python 3反爬蟲原理與繞過實戰》

本書描述了爬蟲技術與反爬蟲技術的對抗過程,並詳細介紹了這其中的原理和具體實現方法。首先講 解開發環境的配置、Web 網站的構成、頁面渲染以及動態網頁和靜態網頁對爬蟲造成的影響。然後介紹了不同型別的反爬蟲原理、具體實現和繞過方法,還涉及常見驗證碼的實現過程,並使用深度學習技術完成了驗證。最後介紹了常見的編碼和加密原理、JavaScript 程式碼混淆知識、前端禁止事件以及與爬蟲相關的 法律知識和風險點。

本書既適合需要儲備反爬蟲知識的前端工程師和後端工程師閱讀,也適合需要儲備繞過知識的爬蟲工程師、爬蟲愛好者以及 Python 程式設計師閱讀。

這本書共有 10 章,內容涉及網路協議、瀏覽器渲染原理、不同型別的反爬蟲手段、JavaScript 程式碼混淆、加密或編碼演算法以及爬蟲領域的法律法規知識。大章目錄如下:

第 1 章 開發環境配置第 2 章 Web 網站的構成和頁面渲染第 3 章 爬蟲與反爬蟲第 4 章 資訊校驗型反爬蟲第 5 章 動態渲染反爬蟲第 6 章 文字混淆反爬蟲第 7 章 特徵識別反爬蟲第 8 章 App 反爬蟲第 9 章 驗證碼第 10 章 綜合知識

在原理探究和分析方面,你會經歷細緻的分析過程,並通過示意圖加深對知識的理解。例如第 6 章第 2 節 CSS 偏移反爬蟲中描述元素位置和樣式值關係的示意圖:

例如第 6 章第 3 節 SVG 反爬蟲中描述 SVG text 定位的示意圖:

例如第 10 章第 1 節編碼與加密中描述加密過程的示意圖:

例如第 9 章第 3 節滑動驗證碼中描述移動距離的示意圖:

網站的反爬蟲措施是會更新的,為了保證讀者的學習品質,本書在編寫過程中開發了一套擁有 21 個示例的練習平臺 Steamboat。

練習平臺與書本緊密結合,不會出現學習過程中找不到與書本相同環境的情況,同時也能避免因練習而導致的侵權問題。除了配套的示例之外,書中還分析了眾多網際網路產品中使用到的反爬蟲手段,這些產品包括福斯點評、淘寶滑動驗證碼、貓眼電影、京東商城、去哪兒網、掘金社群和掌上英雄聯盟等。

你有想過將深度學習應用到爬蟲中嗎?

書中介紹了如何通過卷積神經網路來應對字元驗證碼,並給出了訓練用的圖片和識別率高達 99% 的訓練程式碼。其中部分程式碼如下:

folders = PATH_TEST # 指定預測集路徑trains = get_image_name(PATH_TRAIN) # 獲取訓練樣本所有圖片的名稱pres = get_image_name(folders) # 獲取預測集所有圖片的名稱repeat = len([p for p in pres if p in trains]) # 獲取重複數量start_verifies(folders) # 開啟預測logging.info('預測前確認待預測圖片與訓練樣本的重複情況,''待預測圖片%s張,訓練樣本%s張,重複數量為%s張'% (len(pres), len(trains), repeat))

當然,還有通過目標檢測演算法來應對點選驗證碼的精彩章節。

這樣一本好書,究竟出自何人之手?

作者簡介

韋世東,資深爬蟲工程師。2019 年華為云云享專家、掘金社群優秀作者和 GitChat 認證作者,夜幕團隊 NightTeam 的成員。他在掘金社群和微信公眾號中有多篇爬蟲與反爬蟲相關的文章,好評數爆表。

業內大咖推薦

本書內容十分詳盡,幾乎涵蓋了市面上所有的反爬蟲類型,包括但不限於 Cookie 反爬蟲、WebSocket 反爬蟲、字型反爬蟲、WebDriver 反爬蟲、App 反爬蟲、驗證碼反爬蟲。書中首先對各類反爬蟲技術進行了合理的歸類,然後通過剖析多個案例幫助大家理解各類反爬蟲技術的原理。另外,書中還針對各類反爬蟲給出了對應的繞過和破解方案。這本書乾貨滿滿,可以幫助大家全面了解爬蟲和反爬蟲的各類技術,強烈推薦給大家。

——崔慶才

微軟小冰工程師

《Python3 網路爬蟲開發實戰》作者

在大資料時代,所有公司都離不開資料,而獲取資料最快的方式就是利用爬蟲去爬取。隨著爬蟲的增多,反爬蟲水平也在不斷提高。本書作者自己搭建了 21 個示例,深入解析了 CSS 偏移、字型反爬蟲、JavaScript 混淆、App 逆向、驗證碼破解和加密演算法等知識,並用詳細的程式碼手把手教你如何實現反爬蟲以及如何破解反爬蟲,讓大家真正做到“知其然知其所以然”。強烈推薦給每一位想要從事爬蟲行業,以及希望進階爬蟲技術的朋友們。

——陳祥安

馬蜂窩高階爬蟲工程師

我見證了作者從一個零基礎的小白逐漸成長為一名出色的爬蟲工程師的過程。相信本書不僅是技術滿滿的乾貨集,也是他記錄成長曆程的誠意之作!

——BruceDone

騰訊後端開發工程師

如此手把手帶你探尋反爬蟲的世界,還不快來試試~

最新評論
  • 整治雙十一購物亂象,國家再次出手!該跟這些套路說再見了
  • 業務量暴漲324%!陳德軍:申通將繼續發力這一市場