python-46: 找到模擬登陸中的數據

好了,終於能夠回到咱們的模擬登錄了,前面講了怎麼使用瀏覽器的工具找到最新的cookies以及如何直接使用cookies登錄網站,不提一下的話連我本身都要忘記了python

同時咱們也知道 cookies 具備時效性,這就帶來了一個很尷尬的問題,我總不能每次運行代碼以前都要先手動登陸而後獲取 cookies,再寫入程序中進行登陸吧,因此咱們最後,仍是得從登陸的流程下手,咱們須要瞭解登陸的過程當中瀏覽器作了什麼事情,發送了什麼數據,等等
windows

咱們雖然不知道登錄的整個詳細的流程是怎樣的,可是咱們知道在登錄的時候,會輸入用戶名和密碼,而後提交到服務器,以後服務器進行一系列操做,這個操做的流程是怎樣的咱們如今不用去理會,若是驗證經過,服務器則會向瀏覽器返回數據,咱們要實現模擬登錄,就必須得知道瀏覽器是怎麼把數據發送出去的,實際上,咱們經過瀏覽器的工具就能夠將這些信息找出來瀏覽器

首先打開一個登錄界面,按F12調出調試界面服務器

在點擊登錄按鈕以後看看什麼東西被記錄下來了cookie

有不少的GET,還有一個POST,GET咱們已經很熟悉了,這是瀏覽器和服務器的一種很常見的請求-響應的方式,如今咱們來看看POST,咱們把它點開來看看工具

這裏有password 和 username 的兩個內容,這好像跟咱們輸入的用戶名和密碼同樣,難道這就是瀏覽器向服務器發送的數據嗎?學習

這確實是的,輸入POST上網去查一查就知道了嘛,在下一節咱們將會詳細的講解POST的相關知識,這節還有另外一個重要的內容網站

火狐瀏覽器的F12 是咱們到如今一直使用的工具,不可否認它真的很好用,可是在抓取數據這一方面,它的功能就沒有那麼強大了,抓取數據這裏有一個專業術語叫作"抓包",有好多很好的工具能讓咱們更方便的抓取到咱們想要的數據,好比windows下的fiddler,跨平臺的wireshark 等等,要善用這些工具,由於抓取的數據越詳細,越有利於咱們分析登錄的過程,這裏給你們介紹火狐瀏覽器的一個很好用的插件 httpfoxurl

至於爲何要使用抓包工具呢,前面已經說了,抓包的數據越詳細,越有利於咱們分析登錄過程當中的數據交互,另外,還有一個重要的緣由是,F12這個工具備時候會自動跳轉,以致於咱們找不到POST信息,這種狀況很常見,尤爲是在你的瀏覽器中保存有上一次登錄的cookies的時候,我曾經也很苦惱這個問題,直到我使用了httpfox插件

httpfox 很容易安裝,在火狐瀏覽器的附加組件那裏搜索並安裝便可,安裝完了還有一個問題,就是怎麼調出httpfox的調試界面,這曾經也是我苦惱的又一個問題,直到某天偶然遇到一組快捷鍵組合: ctrl+shift+F2,調出來以後的界面應該是這樣的

至於使用方法很簡單,在你想要抓包以前,按Start,以爲已經抓取到了想要的數據能夠中止了,就按Stop,在下一次抓包以前,若是想要清除前面抓取的數據,能夠按Clear,咱們來操做看看吧

這裏咱們看到除了有數據交互的類型以外,還有url,顯示了是跟哪一個網站進行的數據交互,這個 url 就是你實際提交數據的網址,它在模擬登錄的分析過程當中是很重要的,咱們再來點開一個POST看看是什麼狀況

在下拉的菜單中咱們看到有Headers,Cookies,Post Date,等選項,其中最主要的是Post Date,咱們依然能夠從裏面找出咱們登錄的用戶名和密碼,那麼,Post Date裏面這麼多的數據,咱們都須要寫完嗎?這個不是很好說,能夠從源碼裏面分析最主要發送的是什麼數據,可是你也能夠一股腦將全部數據寫下去

好了,又是截圖又是講解的,真luei,咱們下一節將會學習python 爬蟲中傳送數據的兩種方法

相關文章
相關標籤/搜索