如何在Python http.cookiejar.cookie方法中将cookie的GMT格式过期转换为float?

如何在Python http.cookiejar.cookie方法中将cookie的GMT格式过期转换为float?,python,cookies,Python,Cookies,服务器返回的cookie过期时间为周二,10月17日11:54:07 GMT,因此当我尝试设置cookie时,如下所示: ID = Cookie(version=None,name='NAME',value='VALUE',port=None,port_specified=None,domain='.somedomain.com',domain_specified=None,domain_initial_dot=None,path='/',path_specified=None,secure=N

服务器返回的cookie过期时间为周二,10月17日11:54:07 GMT,因此当我尝试设置cookie时,如下所示:

ID = Cookie(version=None,name='NAME',value='VALUE',port=None,port_specified=None,domain='.somedomain.com',domain_specified=None,domain_initial_dot=None,path='/',path_specified=None,secure=None,discard=None,comment=None,comment_url=None,rest=None,expires='Tue, 17-Oct-45 11:54:07 GMT')
它引发了一个ValueError:无法将字符串转换为float:'Tue,17-Oct-4511:54:07GMT'

那么,如何转换呢?Thx提前:

# quick and easy way
from dateutil.parser import parse
from time import mktime

s = 'Tue, 17-Oct-45 11:54:07 GMT'
p = parse(s)
floating_number = mktime(p.timetuple())
请注意,如果您这样做,您将依赖dateutil的魔法解析器来正确猜测时间戳字符串,而且通常是这样

如果您知道时间戳总是使用相同的格式或几种格式,那么只需根据strtime格式定义格式并使用

如果这样做,还需要考虑时区。使用dateutil可能很好

from datetime import datetime
from time import mktime

YOUR_FORMAT = """your format"""

date_string = 'Tue, 17-Oct-45 11:54:07 GMT'

# strip off the timezone here with split or regex, whatever you like

p = datetime.strptime(date_string, YOUR_FORMAT)
floating_number = mktime(p.timetuple())