1. 程式人生 > >[Python爬蟲]使用Cookies模擬登入的例子

[Python爬蟲]使用Cookies模擬登入的例子

一般我們使用Post提交表單,需要先進行表單的構造,再進行表單的提交,例如:

url = 'http://bangumi.tv/FollowTheRabbit'
params = {
    'form_hash': '95b4e189',
    'referer': 'http://bangumi.tv/',
    'dreferer': 'http://bangumi.tv/',
    'email': 'xxx',
    'password': '***',
    'captcha_challenge_field': 
    'captcha','9ea3s'
    'loginsubmit'
: '登入' } html = requests.post(url, params)

如果表單欄位需要填寫很多,或者經過加密和其他形式包裝,這就增大的構造表單的難度.
這時候可以選擇提交Cookie資訊進行模擬登入.

Cookie

Cookie,是指網站為了辨別使用者身份,進行session跟蹤而儲存在使用者本地的資料.公司通過追蹤使用者的Cookie資訊,實現定製化資訊和興趣提供.Cookie儲存了使用者的資訊,所以我們可以通過提交Cookie來模擬登入網站.

例子

以登入 https://www.douban.com/ 豆瓣網為例說明.(豆瓣網當作例子的好處是一般登入不需要驗證碼,只要不是反覆輸入錯誤就行)
1.手工輸入賬號和密碼登入.
2.在登入後的首頁,開啟Network中的資訊,找到Cookie
在這裡插入圖片描述


headers中加入cookie資訊即可完成模擬登入.

import requests
url='https://www.douban.com/'
headers={
    'Cookie':'xxxxxxxxxxx'
}
html=requests.get(url,headers)
print(html.text)