本文的文字及圖片來源於網絡,僅供學習、交流使用,不具備任何商業用途,若有問題請及時聯繫咱們以做處理。css
當咱們爬取不一樣的網站時,每一個網站頁面的實現方式各不相同,咱們須要對每一個網站都進行分析。那是否有一些通用的分析方法?我分享下本身爬取分析的「套路」。在某個網站上,分析頁面以及抓取數據,我用得最多的工具是 Chrome 開發者工具。web
Chrome 開發者工具是一套內置於 Google Chrome 中的 Web 開發和調試工具,可用來對網站進行迭代、調試和分析。由於國內不少瀏覽器內核都是基於 Chrome 內核,因此國產瀏覽器也帶有這個功能。例如:UC 瀏覽器、QQ 瀏覽器、360 瀏覽器等。ajax
接下來,咱們來看看 Chrome 開發者工具一些比較牛逼的功能。chrome
經過元素(Element)面板,咱們能查看到想抓取頁面渲染內容所在的標籤、使用什麼 CSS 屬性(例如:class=「middle」)等內容。例如我想要抓取我知乎主頁中的動態標題,在網頁頁面所在處上右擊鼠標,選擇「檢查」,可進入 Chrome 開發者工具的元素面板。瀏覽器
經過這種方法,咱們能快速定位出頁面某個 DOM 節點,而後能夠提取出相關的解析語句。鼠標移動到節點,而後右擊鼠標,選擇 「Copy」,能快速複製出 Xpath 、CSS elector 等內容解析庫的解析語句。緩存
網絡(Network)面板記錄頁面上每一個網絡操做的相關信息,包括詳細的耗時數據、HTTP 請求與響應標頭和 Cookie,等等。這就是咱們一般說的抓包。服務器
其中的 Filters 窗格,我常用其來過濾出一些 HTTP 請求,例如過濾出使用 Ajax 發起的異步請求、圖片、視頻等。cookie
最大的窗格叫 Requests Table,此表格會列出了檢索的每個 HTTP 請求。默認狀況下,此表格按時間順序排序,最先的資源在頂部。點擊資源的名稱能夠顯示更多信息。網絡
all:全部請求數據(圖片、視頻、音頻、js代碼、css代碼)異步
XHR:XMLHttpRequest 的縮寫,是ajax技術的核心,動態加載完成常常分析的一個內容
CSS: css樣式文件
JS:JavaScript文件,js解密是常分析的一個頁面
Img: Images 圖片文件
Font: 字體文件(字體反扒)
DOC : Document,文檔內容
WS: WebSocket,web端的socket數據通訊,通常用於一些實時更新的數據
Headers 是顯示 HTTP 請求的 Headers,咱們經過這個能看到請求的方式,以及攜帶的請求參數等。
Preview 是請求結果的預覽。通常用來查看請求到的圖片,對於抓取圖片網站比較給力。
Response 是請求返回的結果。通常的內容是整個網站的源代碼。若是該請求是異步請求,返回的結果內容通常是 Json 文本數據。
此數據與瀏覽器展現的網頁可能不一致,由於瀏覽器是動態加載的
清空全部數據,每一次從新分析時都須要清空以前的數據
搜索框,只要在 ALL 裏面出現的過的內容,就能夠被直接搜索到。經常使用與數據檢索與 JS 解密
保留日誌。當分析在多個頁面跳轉的內容時,必定要勾上,否則當頁面發生新的跳轉時,歷史數據所有都會被清空。
清空 JavaScript、css 文件的緩存,獲取最新的。
保留日誌,作爬蟲是必定須要勾上
https://mp.weixin.qq.com/s/aSwXVrz47lAvQ4k0o4VcZg