爬虫反爬之模拟登陆
cookie模拟登陆
- 适用于需要登陆才能访问的页面
一、法一
- 先成功登陆一次,获取携带登陆信息的cookie
- F12打开控制台,在页面输入用户名、密码,登录成功,找到/home(一般在抓到地址的上面)
- 携带着cookie发请求
** Cookie
** Referer(源,代表从哪里转过来的)
** User-Agent
案例:人人网模拟登陆
二、法二
使用session做会话保持
步骤:
- 寻找POST地址(一般在form表单的action属性)
- 发送用户名和密码,用session保持登录
步骤:
- 实例化session对象
session = requests.session()
- POST表单中的action地址,注意携带data
- GET主页地址
# 实例化session对象
session = requests.session()
# 先POST form中的action地址
session.post(url=post_url, data=data, headers=headers)
# 再GET
html = session.get(url=get_url, headers=headers).text