模拟网页行为之工具篇二
先說360瀏覽器,打開開發(fā)者選項,可以看到界面提供了幾個功能選項,如圖:
?這個圖片的第一個搜索圖標(biāo)點中過后,再去選中網(wǎng)頁你感興趣的部分就可以在Element選項中跳轉(zhuǎn)到你感興趣的代碼。也可以直接ctrl+F2搜尋你感興趣網(wǎng)頁元素和腳本函數(shù)。這里多講幾句,在查看網(wǎng)頁元素的時候,留意網(wǎng)頁元素的action和href的同時,可以留意網(wǎng)頁元素的id和className,因為上述的信息,能通過搜尋來找到j(luò)s相關(guān)執(zhí)行代碼。有些js的執(zhí)行是在單獨的腳本里面中執(zhí)行。這個時候如果需要根據(jù)js函數(shù)名去查找對應(yīng)的實現(xiàn)體,那么就要分析函數(shù)名所屬哪個對象了,譬如billexchange.check(),那么check函數(shù)所屬的對象一般都在類似于billexchange.js腳本里面。如果確實不是上述格式,就只能查找html中的header部分,因為header部分包含了當(dāng)前網(wǎng)頁的所需要的所有腳本,把header部分里面所包含的js文件一個一個雙擊打開來查找,也能查找到。
圖片的第二個選項Network,選中后可以看到網(wǎng)頁加載的收發(fā)包過程,如圖:
可以看到,左邊收發(fā)包列表選中一項后,會在右邊顯示出收發(fā)包的詳細(xì)界面。
詳細(xì)界面中的Headers選項代表發(fā)包的http包頭。
preview選項用來預(yù)覽回包收到的網(wǎng)頁樣式,譬如網(wǎng)頁加載過程中圖片。
response選項,就是單純的回包數(shù)據(jù)了,在里面你可以看到網(wǎng)頁所對應(yīng)的html數(shù)據(jù)格式還有與之對應(yīng)的js和css。
cookies選項就是在網(wǎng)頁回話過程中,你向服務(wù)器提供本次會話過程中你的個人信息,服務(wù)器返回這次會話的個人數(shù)據(jù)保存到你的電腦,下次會話需要通過這個信息來辨識你的個人資料,讓服務(wù)器認(rèn)可你的下一次會話。這個很重要,如果直接采用數(shù)據(jù)協(xié)議方式去模擬網(wǎng)頁行為,那么cookies在你每次進(jìn)行會話時都需要保存下來,并且在你進(jìn)行下一次會話時帶上,這樣才能實現(xiàn)網(wǎng)頁模擬的過程。
乍一看,這些功能基本都滿足我們收發(fā)包分析的基本要求了。 但360瀏覽器收發(fā)包還是有其局限性,一旦頁面發(fā)生網(wǎng)址跳轉(zhuǎn),收發(fā)包就無法跟蹤到具體的發(fā)包流程了。這個時候http analyzer工具登場了。這工具會記錄所有進(jìn)程中的http的收發(fā)包數(shù)據(jù)。這里有兩個作用,第一:解決剛所說的網(wǎng)頁跳轉(zhuǎn)的行為不能收發(fā)包的問題。第二:可以將自己工具模擬網(wǎng)頁的行為和自己手動操作瀏覽器的行為作數(shù)據(jù)對比,來查找問題。不管是哪種模擬網(wǎng)頁行為的方式,最根本的也是通過http協(xié)議來達(dá)到數(shù)據(jù)傳送的目的,這跟脫機(jī)做外掛有點類似,游戲底層總是通過TCP/IP協(xié)議來達(dá)到通信的效果。
圖片的第三個選項Sources,就是講查找函數(shù)實現(xiàn)體的時候,js內(nèi)容顯示的位置。補充一下,為什么有必要查找js的實現(xiàn)。因為這將決定你是采用模擬點擊按鈕的來實現(xiàn)還是直接通過模擬發(fā)包來實現(xiàn),并且還可以根據(jù)不同的彈框來去查找錯誤碼字符串來方便完善你的邏輯。這個內(nèi)容看懂要求的基礎(chǔ)比較簡單,實際上哪怕沒學(xué)過javascript,只有C語言基礎(chǔ)都能大概分析函數(shù)實現(xiàn)的過程。
總結(jié)
以上是生活随笔為你收集整理的模拟网页行为之工具篇二的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: STM32F0使用LL库实现SHT70通
- 下一篇: Go Concurrency Patte