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