BrowserMob proxy


簡述:獲取瀏覽器network中的請求與響應  --BrowserMob proxy

搗鼓了兩三天,踩了不少個坑,終於可以用了,網上.NET資料少的可憐,真的都是淚

 

一.BrowserMob proxy如何配合Selenium使用?

1.需要下載BrowserMob proxy的類庫:Here【有些地方要改的  :( 】

2.下載BrowserMob proxy插件,插件:Here

3.下載Selenium類庫,從Nuget下載最新的就可以了

剛開始使用BrowserMob proxy遇到的坑:

1.還是要說一下關於.NET資料這個資料少的可憐,過了搗鼓大半天,才跑起來,遇到的第一個問題就是,拿到的GetHar()之后拿不到數據,entries為0

不斷地調試后發現,只能拿到Http網頁的responce,絕望了呀,現在都是HTTPs的網址,於是又翻過去找【外面的資料更多億點,內部看不到有人討論】

說是要設置SslProxy屬性為True,這個設置之后連接不上網絡了,我去,調試ssl錯誤。有人說ssl錯誤的原因是要給瀏覽器安裝信任證書,我去,越來越玄學。

我又搗鼓信任證書,結果還是不管用,我直接跑到插件GIT的開源里面看,發現他們說selenium沒有安裝信任證書的api,所以必須手動安裝。【吃瓜中】

最后終於在國外的GOOGLE Group 關於這個話題的討論中得到了一些有用的信息:Here 【外國樓主也在糾結為啥獲取不了https的response】【吃瓜中】

最后問題解決了,他們好像也不太清楚,到底為啥,反正就是版本問題了,我一看我的BrowserMob proxy插件版本2.0 bate版本,我覺得不能啊,我這可是從官網下的最新版本。

可是為啥他們用的版本比我的還高。我日,原來官方下載的時候自己給我下了這個低版本的。我去【想吐槽】

最后的最后,我吧新的插件下載了出來,訪問了百度。 終···············於獲得了28條entries,哈哈·······················

最讓我傻眼的來了,我發現返回的27條里面只有請求,沒有response的content。。哈哈返回的json沒有。。。。。。。。。。。。。。

人傻了,別搞好吧,都到最后了,讓我弄完吧,氣死我了,只要request中url的一些類型信息的話2行JS就搞定了好不

最后更可怕的來了,這個問題很快搜索到了,發現需要開啟一個屬性capturecontent,例子他們都是java和python,C#找不到這個屬性,這個是最絕望的,憑啥差別對待啊~~~~~~~~

在我快絕望的時候,看到了一個外國友人也有同樣的提問,問的人真就只有一兩個。。。。這里:Here 啟發了我,去修改類庫的內容,這個大哥說了最后這配置都是要形成一個url字符串然后傳給插件的,所以

我這個時候只能自己構造一串字符,最后真的成功了,哈哈~~~~~~~~~~~完美!

最后美滋滋的獲取到了response返回的Json,可以為所欲為了~~~哈哈

EnD

在這里就不太多寫了,額,其實已經不少了,為什么我這么多廢話呢?因為我在找資料的的時候真的太累了,有太多要吐槽的東西了,

為了這玩意我,還把python下載下來,學了一上午python然后調用插件的時候出現一樣的錯誤,不可以范圍內https的網站。。哎我都在想要不要混合編程算了,因為.net真的傷不起,后娘養的

為了一上午python發現,Visual Studio果然是世界上最好用的編輯器,其他的真心u用不慣.現在我發現好多東西關於.net的教程都好少,官方網站都沒有。net的用力有的都是java和python。。。

要不要學一學python,因為我發現python上手也太快了吧。。

以上都是我吐槽的點:

最后代碼奉上,直接跑起來,那這么多廢話,大家的事件都挺寶貴的是吧。

Git:Click

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM