首页 > 其他 > 详细

爬虫--如何使用requests模拟登陆知乎

时间:2021-05-13 01:02:43      阅读:32      评论:0      收藏:0      [点我收藏+]

知乎登陆验证码问题比较棘手,所以我们可以考虑通过cookie来模拟登陆。

思路:

1、通过浏览器手动登陆知乎,利用抓包工具(如Fiddler等)来获取登陆后的cookie信息,并将其处理成dict类型。

2、然后使用requests的会话(Session)对象来携带cookie信息发送请求,因为同一个session实例会在跨请求的时候保持某些参数,比如cookie

代码如下:

# coding:utf-8

import requests

cookies  = {
    "_zap":"xxxxxx",
    "_xsrf":"xxxxxx",
    "d_c0":"xxxxxx",
    "__snaker__id":"xxxxxxx",
    "_9755xjdesxxd_":"xxxxxxx",        
    "captcha_session_v2":"xxxxxx" ,
    ...    
}

url = https://www.zhihu.com/
headers = {
    User-Agent:"Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.1 (KHTML, like Gecko) Chrome/22.0.1207.1 Safari/537.1"
}

sess = Session() #创建一个会话对象实例
sess.cookies = requests.utils.cookiejar_from_dict(cookies) #需要将cookie转换成cookiejar对象

response = sess.get(url,headers) #不需要指定cookies了
print(response.text) #能够显示登录后的页面内容了
#后续可以继续使用sess来发送请求,来访问需要登录后才能访问的页面

 

爬虫--如何使用requests模拟登陆知乎

原文:https://www.cnblogs.com/eliwang/p/14761749.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!