豆瓣模拟登陆

2021-01-27  本文已影响0人  Rain师兄

找到登陆接口后,用requests.post()请求该网页URL,之后将得到的cookie存入本地。

遇到什么问题?

参数问题,在requests的post中要用,data。在get中要用params,这个就搞人了。

给我感觉cookie的作用。没有cookie,一些网站是不能爬取的,要爬就需要cookie,那么有些网站必须登陆才有对的cookie可以获取。得到cookie后存入本地。

这个登陆接口页面的cookie也就是豆瓣主页的需要的cookie,什么时候cookie会变 我也不知道,我退出豆瓣之后,对于接口的请求就失效了,得不到cookie了,但是保存下来的cookie能保持较长是间的有效。

也就是说,加了存储的cookie依然能够获取到豆瓣主页信息

1

先登陆豆瓣,找到接口

2

post请求接口url,带入账号密码等等参数,加上接口的cookie,headers

将cookie存入本地

3

使用时读取cookie,赋值给变量

file = open(“文件名.pickle”,'rb')

dict_cookie = pickle.load(file)

4

再请求主网站,带上dict_cookie

之后就可以访问到了。

import requests

import pickle

url ="https://www.douban.com/"

headers = {"User-Agent":"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.141 Safari/537.36"}

file =open("douban.pickle","rb")

dict_cookie = pickle.load(file)

res = requests.get(url,headers=headers,cookies=dict_cookie)

print(res.text)

最后可以显示出账号名称。

上一篇下一篇

猜你喜欢

热点阅读