欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

抓包工具有哪些,能抓什么?

幾乎所有瀏覽器都提供了抓取數(shù)據(jù)包的功能,因?yàn)闉g覽器為抓包提供了一個(gè)專門的操作界面,因此這種抓包方式也被稱為“控制臺(tái)抓包”。本節(jié)以Chrome瀏覽器為例進(jìn)行抓包演示。

控制臺(tái)抓包指的是利用瀏覽器開(kāi)的發(fā)者調(diào)試工具抓取客戶端與后端服務(wù)器交互的數(shù)據(jù),它能夠?qū)⒕W(wǎng)絡(luò)傳輸中發(fā)送與接收的數(shù)據(jù)進(jìn)行截獲、重發(fā)和編輯。

控制臺(tái)抓包非常適合于POST請(qǐng)求類型。我們知道,POST請(qǐng)求使用Form表單向服務(wù)器提交數(shù)據(jù),通過(guò)抓包可以獲取POST請(qǐng)求體的數(shù)據(jù)以及相應(yīng)參數(shù),從而對(duì)響應(yīng)內(nèi)容進(jìn)行分析。下面以有道翻譯(http://fanyi.youdao.com/)為例,講解如何進(jìn)行控制臺(tái)抓包。

控制臺(tái)界面

關(guān)于開(kāi)發(fā)者調(diào)試工具,您應(yīng)該不會(huì)感到陌生,它除了有檢查網(wǎng)頁(yè)結(jié)構(gòu)、元素構(gòu)成的功能外,還有許多其他重要功能,比如抓取數(shù)據(jù)包。下面對(duì)如何抓包做重點(diǎn)介紹。

首先訪問(wèn)有道翻譯網(wǎng)站,然后使用快捷鍵F12打開(kāi)控制臺(tái),并找到Network選項(xiàng)卡,最后在有道翻譯的輸入框內(nèi)輸入“helloworld”進(jìn)行翻譯,控制臺(tái)主界面如下所示:

圖1:開(kāi)發(fā)者調(diào)試工具

下面對(duì)上圖1中控制臺(tái)的常用選項(xiàng)做簡(jiǎn)單介紹:

1)NetWork

該選項(xiàng)主要用于抓取網(wǎng)絡(luò)數(shù)據(jù)包,比如查看請(qǐng)求信息、響應(yīng)信息等。它有三個(gè)常用選項(xiàng)卡,分別是All、XHR、JS,其作用如下:

  • All:抓取所有的網(wǎng)絡(luò)數(shù)據(jù)包
  • XHR:抓取所有異步加載的網(wǎng)絡(luò)數(shù)據(jù)包
  • JS:抓取所有的JS文件

2)Sources

該選項(xiàng)主要用于查看頁(yè)面的HTML、JavaScript、CSS的源代碼,除此之外,最重要的是它還可以調(diào)試JS源代碼,可以給JS代碼打斷點(diǎn)調(diào)試,有助于分析爬蟲(chóng)程序中的一些參數(shù)。

3)Console

交互模式,能夠執(zhí)行JavaScript代碼,一般用于對(duì)當(dāng)前程序中JS代碼進(jìn)行測(cè)試,同時(shí)也可以查看JavaScript對(duì)象,或者調(diào)試日志、異常信息等。

4)Application

該選項(xiàng)用于查看、修改本地存儲(chǔ)(LocalStorage)以及會(huì)話存儲(chǔ)(SessionStroage)等,同時(shí)它也可以用來(lái)查看Cookie信息。

Cookie是網(wǎng)站服務(wù)器為了辨別用戶身份,而儲(chǔ)存在客戶端瀏覽器上一段加密字符串。某些網(wǎng)站需要用戶登錄后才可以看到相應(yīng)的數(shù)據(jù)。如果想要爬取此類網(wǎng)站的數(shù)據(jù),就需要使用Cookie模擬用戶登錄。

數(shù)據(jù)包抓取

有道翻譯采用了JS異步加載的方式獲取翻譯結(jié)果,并將該結(jié)果渲染到指定的輸出框內(nèi)。所謂異步加載,即不需要刷新頁(yè)面,就可實(shí)現(xiàn)頁(yè)面的局部渲染。對(duì)于這樣數(shù)據(jù),可以通過(guò)NetWork的中XHR選項(xiàng)來(lái)抓取數(shù)據(jù)包,并選擇查看最后一個(gè)數(shù)據(jù)包,如下圖2所示:

圖2:抓取數(shù)據(jù)包

因?yàn)楫惒郊虞d幾乎是實(shí)時(shí)響應(yīng)的,所以當(dāng)您在輸入框內(nèi)輸入“helloworld”的過(guò)程中,每輸出一個(gè)單詞都會(huì)向服務(wù)器發(fā)送一次異步請(qǐng)求(若輸出很慢時(shí),一個(gè)字母都會(huì)發(fā)送一次請(qǐng)求),除非您事先將要查詢的單詞復(fù)制好,一次性粘貼到輸入框內(nèi),只有這樣才會(huì)得到一個(gè)數(shù)據(jù)包。因此,在這里選擇了最后一個(gè)數(shù)據(jù)包進(jìn)行分析。

接下來(lái),對(duì)上圖2中常用選項(xiàng)做簡(jiǎn)單介紹:Headers用來(lái)描述整個(gè)請(qǐng)求信息,Preview用來(lái)對(duì)響應(yīng)內(nèi)容進(jìn)行預(yù)覽,Response用于查看響應(yīng)內(nèi)容,Cookies用于查看客戶端Cookie信息。

圖3:預(yù)覽響應(yīng)內(nèi)容

看變化規(guī)律

在有道翻譯的輸入框內(nèi)多輸入幾個(gè)單詞或者漢字,查看FormData的變換規(guī)律。你會(huì)發(fā)現(xiàn)有些參數(shù)的值總是變化的,而有些參數(shù)值沒(méi)有變化,比如salt、sign、lts總是變化的,而bv等參數(shù)是不變化的,而參數(shù)i代表用戶輸入的單詞。如下所示:

i:helloworld#你輸入的單詞
salt:16161405904876
sign:a6f9d57d297acc79f31b049e2a542519
lts:1616140590487
bv:cda1e53e0c0eb8dd4002cefc117fa588

經(jīng)過(guò)分析,最終您會(huì)發(fā)現(xiàn)如下規(guī)律:lts代表毫秒時(shí)間戳;salt和lts之間存在著某種關(guān)聯(lián),因?yàn)閮烧咧挥凶詈笠粋€(gè)數(shù)字是不同的;而sign對(duì)應(yīng)的值是一個(gè)加密后的字符串。在下一節(jié)我們將講解如何破解有道翻譯,將它作為API接口實(shí)現(xiàn)在線實(shí)時(shí)翻譯。

抓包是分析請(qǐng)求、響應(yīng)數(shù)據(jù),以及監(jiān)視HTTP(S)通信的常用方法,它能夠幫助我們明確要請(qǐng)求的URL、請(qǐng)求參數(shù)/參數(shù)值、Cookies,以及其他響應(yīng)信息,這對(duì)于構(gòu)建POST請(qǐng)求方法十分重要。

除了使用瀏覽器自帶的調(diào)試工具外,您也可以使用Fiddler抓包工具,這款軟件不僅適用于Web抓包,同樣也適用于手機(jī)移動(dòng)端抓包。