session的概念Cookie处理

3.5 Cookie处理

如果响应中包含Cookie的值,可以如下方式获取Cookie字段的值,示例如下:

import requests
user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
headers={'User-Agent':user_agent}
r = requests.get('http://www.baidu.com',headers=headers)
# 遍历出所有的cookie字段的值
for cookie in r.cookies.keys():
    print cookie+':'+r.cookies.get(cookie)

如果想自定义Cookie值发送出去,可以使用以下方式,示例如下:

import requests
user_agent = 'Mozilla/4.0 (compatible; MSIE 5.5; Windows NT)'
headers={'User-Agent':user_agent}
cookies = dict(name='qiye',age='10')
r = requests.get('http://www.baidu.com',headers=headers,cookies=cookies)
print r.text

还有一种更加高级,且能自动处理Cookie的方式,有时候我们不需要关心Cookie值是多少,只是希望每次访问的时候,程序自动把Cookie的值带上,像浏览器一样。Requests提供了一个session的概念,在连续访问网页,处理登录跳转时特别方便,不需要关注具体细节。使用方法示例如下:

import Requests
oginUrl = 'http://www.xxxxxxx.com/login'
s = requests.Session()
#首先访问登录界面,作为游客,服务器会先分配一个cookie
r = s.get(loginUrl,allow_redirects=True)
datas={'name':'qiye','passwd':'qiye'}
#向登录链接发送post请求,验证成功,游客权限转为会员权限
r = s.post(loginUrl, data=datas,allow_redirects= True)
print r.text

上面的这段程序,其实是正式做Python开发中遇到的问题,如果没有第一步访问登录的页面,而是直接向登录链接发送Post请求,系统会把你当做非法用户,因为访问登录界面时会分配一个Cookie,需要将这个Cookie在发送Post请求时带上,这种使用Session函数处理Cookie的方式之后会很常用。

(0)

相关推荐

  • 618!京东 PC 版抢卷

    来源:Python 技术「ID: pythonall」 618不到一个月了,京东 618 活动已经开始了,不知道小伙伴们参与了没.先抢一下京东的优惠劵,也许 618 出现神劵呢? 抓包分析登录 获取二 ...

  • python接口自动化测试(四)

    掌握了前面几节的的内容,就可以做一些简单的http协议接口的请求发送了,但是这些还不够.HTTP协议是一个无状态的应用层协议,也就是说前后两次请求是没有任何关系的,那如果我们测试的接口之前有相互依赖关 ...

  • Python爬虫:爬取需要登录的网站

    不少伙伴学爬虫,这就出一期Python爬虫教程,文末总结的有视频教程,自己按需学习哈! 爬虫在采集网站的过程中,部分数据价值较高的网站,会限制访客的访问行为.这种时候建议通过登录的方式,获取目标网站的 ...

  • 爬虫入门教程 —— 2

    requests Request 自称是 HTTP for Humans  ,非常的方便. Request 其实底层就是封装的urllib3,它的文档非常的完备,完全可以支持现在的网络需要,可以在py ...

  • python接口自动化4-绕过验证码登录(cookie)

    前言 有些登录的接口会有验证码:短信验证码,图形验证码等,这种登录的话验证码参数可以从后台获取的(或者查数据库最直接). 获取不到也没关系,可以通过添加cookie的方式绕过验证码. 一.抓登录coo ...

  • Python爬虫学习笔记(三)

    Cookies: 以抓取https://www.yaozh.com/为例 Test1(不使用cookies): 代码: import urllib.request# 1.添加URLurl = &quo ...

  • python爬虫整理| 原来我曾经拥有过这么多爬虫啊

    一.requests模块的学习 使用事前:pip install requests 1)发送get,post请求,获取相应: response = requests.get(url) #发送get请求 ...

  • JavaWeb系列全套详细完整笔记(包含基本概念,Servlet,Cookie/Session,JavaBean,MVC架构以及各类实现完整案例)

    本篇学习笔记总结自bilibiliup主[狂神说Java]系列视频:[狂神说Java]JavaWeb入门到实战 视频作者公众号:狂神说 JavaWeb 1.基本概念 1.1.前言 Web开发: 静态W ...

  • 前后端接口鉴权全解 Cookie/Session/Token 的区别

    今天 作者:ssshooter 不知不觉也写得比较长了,一次看不完建议收藏夹!本文主要解释与请求状态相关的术语(cookie.session.token)和几种常见登录的实现方式,希望大家看完本文后可 ...

  • Web 开发必须掌握的三个技术:Token、Cookie、Session

    WEB前端开发社区 1周前 在Web应用中,HTTP请求是无状态的.即:用户第一次发起请求,与服务器建立连接并登录成功后,为了避免每次打开一个页面都需要登录一下,就出现了cookie,Session. ...

  • Token是什么?和session、cookie相比,使用场景有什么区别?

    在Web开发领域,相信大家对于Cookie和Session都很熟悉,Cookie和Session都是会话保持技术的解决方案.随着技术的发展,Token机制出现在我们面前,不过很多开发者对于Token和 ...

  • Cookie和Session有什么不同?网络安全网络协议

    Cookie和Session有什么不同?Cookie和Session之间有什么区别?网络协议相关知识点是Linux运维和网络安全工程师需要了解的内容.要成为优秀的网络安全工程师,需要掌握扎实的网络安全 ...

  • drf—— 响聊聊cookie session token的演变

    一.会话保持 会话保持是指在负载均衡器上的一种机制,可以识别客户端与服务器之间交互过程的关连性,在作负载均衡的同时还保证一系列相关连的访问请求都会分配到一台机器上. 用人话来表述就是:在一次会话过程中 ...

  • 彻底理解cookie,session,token

    发展史# 1.很久很久以前,Web 基本上就是文档的浏览而已, 既然是浏览,作为服务器, 不需要记录谁在某一段时间里都浏览了什么文档,每次请求都是一个新的HTTP协议, 就是请求加响应,  尤其是我不 ...

  • session cookie

    session cookie 中文名通话cookie 外文名session cookie 领    域计算机 别    称临时cookie 基本内容 在网络上,临时cookie为用户浏览器关闭时消失的 ...

  • Session和Cookie的区别!Python入门

    学习Python找工作的时候,面试官都会问我们一些比较专业的知识,比如Session和Cookie的区别是什么?相信很多人都有这样的经历,接下来我们一起来认识一下Session和Cookie吧. 什么 ...