python cookies过期_python - 获取cookie到期时间使用请求库

论坛 期权论坛 脚本     
已经匿名di用户   2022-4-13 16:43   1470   0

I am trying to get the expiry time of a specific cookie that I retrieve from the server as:

s = requests.session()

r = s.get("http://localhost/test")

r.cookies

This will list all cookies sent by the server (I get 2 cookies) as:

<[

argcgev221 for localhost.local/>, ]>

When I do:

r.cookies.keys

I get:

eJar'>[Cookie(version=0, name='PHPSESSID', value='30tg9vn9376kmh60ana2essfi3', p

ort=None, port_specified=False, domain='localhost.local', domain_specified=False

, domain_initial_dot=False, path='/', path_specified=True, secure=False, expires

=None, discard=True, comment=None, comment_url=None, rest={}, rfc2109=False), Co

okie(version=0, name='WebSecu', value='f', port=None, port_specified=False, doma

in='localhost.local', domain_specified=False, domain_initial_dot=False, path='/test', path_specified=False, secure=False, expires=1395491371, discard=Fals

e, comment=None, comment_url=None, rest={}, rfc2109=False)]>>

As you can see, we have two cookies. I would like to get the expiry time of the cookie named "WebSecu"

Thank you

解决方案

In requests, the cookie jar is a very special object. You might notice that if you do:

r.cookies['WebSecu']

You'll receive the value of that cookie as a string (in your example f). To get the actual cookie object that holds that information, you will have to iterate over the cookie jar like so:

expires = None

for cookie in r.cookies:

if cookie.name == 'WebSecu':

expires = cookie.expires

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:81
帖子:4969
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP