python-39: cookies

在前面一節中,我已經簡單的說了cookies的一些內容,我相信你們也不陌生,好多的殺毒軟件會經常提示說爲了保護用戶的隱私,須要按期清理cookies,等等,這一節,咱們就來認真聊一聊cookies
爲了增長可信度,我仍是引用百度上百科的一段文字
python


Cookies是一種可以讓網站服務器把少許數據儲存到客戶端的硬盤或內存,或是從客戶端的硬盤讀取數據的一種技術。Cookies是當你瀏覽某網站 時,由Web服務器置於你硬盤上的一個很是小的文本文件,它能夠記錄你的用戶ID、密碼、瀏覽過的網頁、停留的時間等信息。當你再次來到該網站時,網站通 過讀取Cookies,得知你的相關信息,就能夠作出相應的動做,如在頁面顯示歡迎你的標語,或者讓你不用輸入ID、密碼就直接登陸等等。
從 本質上講,它能夠看做是你的身份證。但Cookies不能做爲代碼執行,也不會傳送病毒,且爲你所專有,並只能由提供它的服務器來讀取。保存的信息片段以 「名/值」對(name-value pairs)的形式儲存,一個「名/值」對僅僅是一條命名的數據。一個網站只能取得它放在你的電腦中的信息,它沒法從其它的Cookies文件中取得信 息,也沒法獲得你的電腦上的其它任何東西。
Cookies中的內容大多數通過了加密處理,所以通常用戶看來只是一些毫無心義的字母數字組合,只有服務器的CGI處理程序才知道它們真正的含義。
因爲Cookies是咱們瀏覽的網站傳輸到用戶計算機硬盤中的文本文件或內存中的數據,所以它在硬盤中存放的位置與使用的操做系統和瀏覽器密切相關。
sql



上面的一段文字很通俗易懂了,我在網上查找關於cookies的資料的時候也看到許多有意思的描述,可是在這裏就不跟你們說了,有興趣能夠本身去看一下。對於我來講,我想告訴你們的信息是:cookies 能讓你在不從新輸入用戶ID和密碼的狀況下自動登陸網站     
那麼,我能不能經過什麼方法獲取到cookies,而後直接使用這個cookies來模擬登陸呢,這彷佛是一個很值得嘗試的作法,可是首先,咱們應該從怎麼獲取cookies開始
關於怎麼獲取cookies,我能想到而且試驗過的有三種方法:
    1. 既然cookies是存在本地文件的,那我就找出存放的文件名,再查看裏面的內容
        我使用的是firefox,這裏說一下方法:
            1. 在地址欄輸入:about:support,而後你就會看到這樣一個界面       
瀏覽器

 而後找到配置文件夾---->打開目錄,找到 cookies.sqlite或者相關文件,這些就是啦
服務器

    2. 經過瀏覽器的工具查看
        仍是火狐,按F12,會出現這樣的窗口
cookie

 這裏的cookies有不少項,可是哪一些是咱們須要的呢?
咱們在cookies列表中隨便選擇一個,而後點擊右鍵,會彈出這樣一個菜單
工具

咱們看到有複製刪除之類的選項,因此有一個很笨的方法,把cookies一條一條刪除而後再登陸看看哪些是必須的哪些是沒必要須的網站


    3. 經過代碼獲取
   cookies也是能夠經過代碼獲取的,主要使用到了urllib2庫和cookielib庫,這裏將代碼貼上來,先沒必要急着理解,這裏只是告訴你們有這麼一個方法,具體的狀況後面會詳細的講 cookielib 這個模塊
ui

import urllib2
import cookielib
#聲明一個CookieJar對象實例來保存cookie
cookie = cookielib.CookieJar()
#利用urllib2庫的HTTPCookieProcessor對象來建立cookie處理器
handler=urllib2.HTTPCookieProcessor(cookie)
#經過handler來構建opener
opener = urllib2.build_opener(handler)
#此處的open方法同urllib2的urlopen方法,也能夠傳入request
response = opener.open('http://www.baidu.com')
for item in cookie:
    print 'Name = '+item.name
    print 'Value = '+item.value

 
好了,到這裏我將我能想到的獲取cookies的方法和實例都列舉出來了,那麼下一步咱們應該嘗試可否直接使用咱們獲取到的cookies模擬登陸
加密

相關文章
相關標籤/搜索