python:Fastapi - Cookie 和 Header

python:Fastapi - Cookie 和 Header,第1张

前面唠了一些关于请求体的一些事情,这次主要唠下 cookie 和 header 的东西, cookie 、 header 和 Path 、 Query 一样都是继承公共的 Param 类,传参的一些参数都差不多是一样的。

区别的就是 Path 、 Query 是在 postman 中的 Param 中放入参数进行请求,而 cookie 、 header 则是在 postman 中的 Headers 中放入参数进行请求

导入 Cookie

第一个值是参数的默认值,同时也可以传递所有验证参数或注释参数,来校验参数:

Cookie() 的默认值设置的是必填参数,如果请求时不填写则抛出异常

Cookie(None) 的默认值设置的是 None ,请求时则不填写,不会抛出,请求结果返回是 null 值

启动服务:

请求接口:

请求参数:

请求结果:

首先导入 Header

然后使用和 Path 、 Query 和 Cookie 一样的结构定义 Header 参数

第一个值是默认值,你可以传递所有的额外验证或注释参数:

Header() 的默认值设置的是必填参数,如果请求时不填写则抛出异常。但是如果你在工具(例如: postman 、 浏览器 )中请求接口,工具会默认给你提供一个 user_agent ,所以自然就看不到报错了。

Header 在 Path 、 Query 和 Cookie 提供的功能之上有一点额外的功能:

启动服务:

请求接口:

请求参数:

请求结果:

但是有些时候出于某些原因,需要禁用下划线到连字符的自动转换,设置 Header 的参数 convert_underscores 为 False 即可:

启动服务:

请求接口:

请求参数:

请求结果:

从请求结果可以清晰看到,类型错误,导致这个抛出错误原因就是在 headers 中设置了 convert_underscores=False 。

注意点: 因为有些代理服务器不支持使用带有下划线的 headers ,所以就会出现矛盾体,就是我既想禁用,又想正常访问的问题。对于这个问题,大家探讨吧…

因为与路径通信时会发送多个 >

Cookie,指某些网站为了辨别用户身份、进行session跟踪而储存在用户本地终端上的数据(通常经过加密),比如说有些网站需要登录后才能访问某个页面,在登录之前,你想抓取某个页面内容是不允许的。那么我们可以利用Urllib2库保存我们登录的Cookie,然后再抓取其他页面就达到目的了,那么python爬虫使用Cookie如何进行

cookielibCookieJar(),自动进行cookie管理:实例:

cj = cookielibCookiejar()

urlopen('')

for index, cookie in enumerate(cj):

print '[',index, ']',cookie

以上就是关于python:Fastapi - Cookie 和 Header全部的内容,包括:python:Fastapi - Cookie 和 Header、为什么Python2.7爬虫无法获取全部Cookie、python爬虫使用Cookie如何进行等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/9761155.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-01
下一篇2023-05-01

发表评论

登录后才能评论

评论列表(0条)

    保存