10個爬蟲工程師必備的工具瞭解一哈

極簡XksA發表於2019-02-21

本文轉載自公眾號 | 雞仔說

作者 | 張小吉


工欲善其事必先利其器的道理相信大家都懂。而作為經常要和各大網站做拉鋸戰的爬蟲工程師們,則更需要利用利用好身邊的一切法器,以便更快的攻破對方防線。今天我就以日常爬蟲流程,給大家介紹十款工具,相信大家掌握之後,必定能夠在工作效率上,提升一個量級

爬蟲第一部做什麼?當然是目標站點分析

1.Chrome

10個爬蟲工程師必備的工具瞭解一哈

Chrome屬於爬蟲的基礎工具,一般我們用它做初始的爬取分析,頁面邏輯跳轉、簡單的js除錯、網路請求的步驟等。我們初期的大部分工作都在它上面完成,打個不恰當的比喻,不用Chrome,我們就要從智慧時代倒退到馬車時代

同類工具: Firefox、Safari、Opera

2.Charles

10個爬蟲工程師必備的工具瞭解一哈

Charles與Chrome對應,只不過它是用來做App端的網路分析,相較於網頁端,App端的網路分析較為簡單,重點放在分析各個網路請求的引數。當然,如果對方在服務端做了引數加密,那就涉及逆向工程方面的知識,那一塊又是一大籮筐的工具,這裡暫且不談

同類工具:Fiddler、Wireshark、Anyproxy

接下來,分析站點的反爬蟲

3.cUrl

10個爬蟲工程師必備的工具瞭解一哈

維基百科這樣介紹它

cURL是一個利用URL語法在命令列下工作的檔案傳輸工具,1997年首次發行。它支援檔案上傳和下載,所以是綜合傳輸工具,但按傳統,習慣稱cURL為下載工具。cURL還包含了用於程式開發的libcurl。

在做爬蟲分析時,我們經常要模擬一下其中的請求,這個時候如果去寫一段程式碼,未免太小題大做了,直接透過Chrome複製一個cURL,在命令列中跑一下看看結果即可,步驟如下

10個爬蟲工程師必備的工具瞭解一哈


10個爬蟲工程師必備的工具瞭解一哈

4.Postman

10個爬蟲工程師必備的工具瞭解一哈


10個爬蟲工程師必備的工具瞭解一哈

當然,大部分網站不是你複製一下cURL連結,改改其中引數就可以拿到資料的,接下來我們做更深層次的分析,就需要用到Postman“大殺器”了。為什麼是“大殺器”呢?因為它著實強大。配合cURL,我們可以將請求的內容直接移植過來,然後對其中的請求進行改造,勾選即可選擇我們想要的內容引數,非常優雅

5.Online JavaScript Beautifier

10個爬蟲工程師必備的工具瞭解一哈

用了以上的工具,你基本可以解決大部分網站了,算是一個合格的初級爬蟲工程師了。這個時候,我們想要進階就需要面對更復雜的網站爬蟲了,這個階段,你不僅要會後端的知識,還需要了解一些前端的知識,因為很多網站的反爬措施是放在前端的。你需要提取對方站點的js資訊,並需要理解和逆向回去,原生的js程式碼一般不易於閱讀,這時,就要它來幫你格式化吧

6.EditThisCookie

10個爬蟲工程師必備的工具瞭解一哈

爬蟲和反爬蟲就是一場沒有硝煙的拉鋸戰,你永遠不知道對方會給你埋哪些坑,比如對Cookies動手腳。這個時候你就需要它來輔助你分析,透過Chrome安裝EditThisCookie外掛後,我們可以透過點選右上角小圖示,再對Cookies裡的資訊進行增刪改查操作,大大提高對Cookies資訊的模擬

接著,我們開始設計爬蟲的架構

7.Sketch

10個爬蟲工程師必備的工具瞭解一哈

當我們已經確定能爬取之後,我們不應該著急動手寫爬蟲。而是應該著手設計爬蟲的結構。按照業務的需求,我們可以做一下簡單的爬取分析,這有助於我們之後開發的效率,所謂磨刀不誤砍柴工就是這個道理。比如可以考慮下,是搜尋爬取還是遍歷爬取?採用BFS還是DFS?併發的請求數大概多少?考慮一下這些問題後,我們可以透過Sketch來畫一下簡單的架構圖

同類工具:Illustrator、 Photoshop

開始愉快的爬蟲開發之旅吧

終於要進行開發了,經過上面的這些步驟,我們到這一步,已經是萬事俱備只欠東風了。這個時候,我們僅僅只需要做code和資料提取即可

8.XPath Helper

10個爬蟲工程師必備的工具瞭解一哈

在提取網頁資料時,我們一般需要使用xpath語法進行頁面資料資訊提取,一般地,但我們只能寫完語法,傳送請求給對方網頁,然後列印出來,才知道我們提取的資料是否正確,這樣一方面會發起很多不必要的請求,另外一方面,也浪費了我們的時間。這個就可以用到XPath Helper了,透過Chrome安裝外掛後,我們只需要點選它在對應的xpath中寫入語法,然後便可以很直觀地在右邊看到我們的結果,效率up+10086

9.JSONView

10個爬蟲工程師必備的工具瞭解一哈

我們有時候提取的資料是Json格式的,因為它簡單易用,越來越多的網站傾向於用Json格式進行資料傳輸。這個時候,我們安裝這個外掛後,就可以很方便的來檢視Json資料啦

10.JSON Editor Online

10個爬蟲工程師必備的工具瞭解一哈

JSONView是直接在網頁端返回的資料結果是Json,但多數時候我們請求的結果,都是前端渲染後的HTML網頁資料,我們發起請求後得到的json資料,在終端(即terminal)中無法很好的展現怎麼辦?藉助JSON Editor Online就可以幫你很好的格式化資料啦,一秒格式化,並且實現了貼心得摺疊Json資料功能

既然看到這裡,相信你們一定是真愛粉啦,送你們一個彩蛋工具。

0.ScreenFloat

10個爬蟲工程師必備的工具瞭解一哈

它能來幹嘛?見名思意,就是一個螢幕懸浮工具,然而我最近才發現它特別重要,尤其我們需要分析引數時,經常需要在幾個介面來回切換,這個時候有一些引數,我們需要比較他們的差異,這個時候,你就可以透過它先懸浮著,不用在幾個介面中來切換。非常方便。再送你一個隱藏玩法,比如上面這樣

有其他好用的工具,歡迎小夥伴留言哈

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31556503/viewspace-2636598/,如需轉載,請註明出處,否則將追究法律責任。

相關文章