扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
这篇文章主要介绍python模拟登陆的方法有哪些,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
创新互联公司专业为企业提供彝良网站建设、彝良做网站、彝良网站设计、彝良网站制作等企业网站建设、网页设计与制作、彝良企业网站模板建站服务,十载彝良做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。python模拟登陆的几种方法
客户端向服务器发送请求,cookie则是表明我们身份的标志。而“访问登录后才能看到的页面”这一行为,恰恰需要客户端向服务器证明:“我是刚才登录过的那个客户端”。于是就需要cookie来标识客户端的身份,以存储它的信息(如登录状态)
1、先在浏览器中登录,然后打开开发者选项,找到一个请求方法为POST的请求,复制Requests Headers中的cookie在爬取需要登录的页面时加上此cookies即可
import requests url = '......' headers = {'cookies':'......'} response = requests.get(url=url, headers=headers)
2、 模拟登录,并用session维持会话,用requests的session模拟登录后session会记录cookies,接下来的请求会被放在同一个会话中。举个简单例子,在 requests 中,如果直接利用 get()或 post()等方法的确可以做到模拟网页的请求,但是这实际 上是相当于不同的会话,也就是说相当于你用了两个浏览器打开了不同的页面。设想这样一个场景,第一个请求利用 post()方法登录了某个网站,第二次想获取成功登录后的自 己的个人信息,你又用了一次 get()方法去请求个人信息页面。 实际上,这相当于打开了两个浏览器, 这是两个完全不相关的会话,能成功获取个人信息吗?那当然不能
import requests ''' 下面的data是先在浏览器中登录,然后打开开发者选项,找到一个请求方法为POST的请求,复制里面的Form Data ''' url = '......' data = { username:'......', password:flz_sanqianchi, rememberMe:true, lt:LT-82465-9HtQnC7ZASZHohtnQlrqMvXo7cI2B7, execution:e1s1, } headers = {'user-agent':'Mozolla/5.0'} ''' 这里用requests的session来请求网页,做到维持同一会话的目的 ''' session = requests.Session() reqsonse = session.post(url=url, headers=headers, data=data) ''' 接下来就可以请求别的登陆后的页面,而不需要处理cookies ''' url2 = '这里是已经登录后的某一页面' response = session.get(url=url2, headers=headers)
以上是“python模拟登陆的方法有哪些”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联成都网站设计公司行业资讯频道!
另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流