python 模擬豆瓣登入(豆瓣6 0)

2022-08-22 21:21:09 字數 1344 閱讀 5686

最近在學習python爬蟲,看到網上有很多關於模擬豆瓣登入的例子,隨意找了乙個試了下,發現不能執行,對比了一下**和豆瓣**,發現原來是豆瓣**做了修改,增加了反爬措施。

首先看下要模擬登入的**:

開啟開發者模式:

在賬號和密碼隨意填入資料:

發現會傳送乙個post請求:

ur是:

資料格式是:

於是可以來編寫**:

import requests

defmain():

url_basic = '

'url = '

'ua_headers =

data =

s =requests.session()

s.post(url=url_basic, headers=ua_headers, data=data)

response = s.get(url=url, headers=ua_headers)

with open(

'douban.html

' , 'wb'

) as f:

f.write(response.content)

if__name__ == '

__main__':

main()

第一步:

建立 s = requests.session()

作用是跨請求保持引數,也就是說s這個session物件所發出的所有請求之間會保持cookies

第二步:

用建立好的session物件攜帶賬號,密碼去傳送post請求。

由於改版後的豆瓣返回的是乙個josn資料,而不是像以前一樣重定向,所以需要我們來重定向。

第三步:

攜帶登入成功儲存的cookie去訪問首頁,就會得到你自己的首頁.

最後得到個人首頁:

模擬登入豆瓣

豆瓣的模擬登入比較簡單,唯一麻煩的是需要手動輸入驗證碼 注意當沒有驗證碼的時候下面的 是不行的,當沒有驗證碼的時候會更加簡單,form表單中 會少新增id和yzm屬性 import requests from lxml import etree import os,time,urllib impor...

python 模擬登入豆瓣 並 發表動態

模擬登入這塊一直沒搞過,主要是對 模擬登陸的流程不太熟悉,網上找了好多資料,感覺熟悉個大概,就先用豆瓣 試試。驗證碼這一塊,現在主要是先把驗證碼的儲存下來,手動輸入驗證碼,後期研究下python自動識別驗證碼。主要實現 登入豆瓣,並發表一句話 coding utf 8 import re impor...

python爬蟲登入豆瓣(一)

使用 第三方庫 requests 通過使用 chrome 瀏覽器抓包,可以得到這個請求,將其中的 headers 和 data 提交。最後輸出到 douban.html 的檔案中,即可檢視登入的介面。這次請求是第一次登入,所有介面為提示修改個人資訊。將賬號和密碼改為自己的帳號和密碼 data hos...