終於到這裏了,卡了兩天,糾結的地方主要是在選擇什麼網站來做爲示範,由於如今的網站有好多都有驗證碼,比較難弄,或者像百度同樣什麼信息都不給,原本還覺得到後面不得不使用公司low low的OA網站,不過幸虧無心中看到一個符合個人要求的,能完成講解也能讓大家實踐的網站,大大的鬆了一口氣php
好了,閒話很少說,上回咱們對比了獲取到的幾個cookies,而後通過實踐知道了要使用哪一個,如今咱們來看看怎麼使用cookies直接登陸網站,
python
首先來看看咱們這部分實例中要使用到的網站:http://www.lvye.org/index.php
cookie
你們能夠先註冊一個帳號試試看登錄後的界面是怎麼樣的網絡
首先咱們仍是 F12 找到網絡選項卡,而後按 F5 刷新,在請求頭信息裏面尋找cookies函數
這個網站的cookies只有兩個,比較少,感興趣的話能夠點開右邊的Cookies選項卡,這裏的兩個cookies是同樣的,然而拿到了cookies我也仍是不知道怎麼寫代碼,可是我發現,這個cookies是在請求頭信息裏面的,請求頭不就是headers嗎,那是否是說,我只要把這個cookies寫進headers,而後在發送出去就能夠了呢網站
因而我進行了嘗試,爲了減小其餘部分的干擾,我甚至連異常處理都沒加進去,就只是簡單的構造請求,發送頭信息,打開網址,若是看過以前的內容你會發現,當我在調試某些新的功能的時候,我會盡可能簡化代碼,把不須要的東西所有去掉,對於我來講,這是一個很好的方法,代碼越長,出錯的地方就會越多,我只是爲了驗證某個函數或者某種方法可否成功,因此只要最基本的功能就好了,其餘的徹底沒有必要ui
#!/usr/bin/env python # -*- coding: UTF-8 -*- __author__ = '217小月月坑' ''' 使用cookies直接登錄 ''' import urllib2 # 要登錄的網址 url = 'http://www.lvye.org/userinfo.php?uid=409557' user_agent = 'Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:39.0) Gecko/20100101 Firefox/39.0' host = 'www.lvye.org' referer = 'http://www.lvye.org/index.php' cookies = 'PHPSESSID=8e1mu8g2akohgtdvlitv314ct3; lvyebbs=290738b8c90d8cf97c03922248ba629e134e944a1248e7351eded398c4bb6b1a' heasers = {'User-Agent':user_agent, 'Host':host, 'Referer':referer, 'Cookie':cookies} request = urllib2.Request(url,headers=heasers) response = urllib2.urlopen(request) print response.read()
好了咱們來看看輸出url
這裏只是截取了一小段的代碼,輸出有了,可是我憑着這個輸出並不能確認我是否是已經登錄上去了,我也不知道結果裏面顯示的是登錄前的代碼仍是登錄後的代碼,或者應該這樣說,怎麼判斷我寫的代碼是否已經成功登錄網站了呢?調試