2014-02-03 2 views
0

Как преобразовать response['set-cookie'] выходную строку в от ответа какPython - преобразовать набор-печенье ответ на массив печенье

"cookie1=xxxyyyzzz;Path=/;Expires=Wed, 03-Feb-2015 08:03:12 GMT;Secure;HttpOnly, cookie2=abcdef;Path=/;Secure" 

к

['cookie1':'xxxyyyzzz','cookies2':'abcdef'] 
+0

Что у вас tr IED,? Похоже, что это простой случай разделения строки на разделителях, более того [синтаксис заголовка 'set-cookie' (http://tools.ietf.org/search/rfc6265#page-8) не позволяет разделителям в имени файла cookie _or_, поэтому вам даже не придется беспокоиться о синтаксических конструкциях цитат. – lanzz

+0

Если вы использовали запросы, вы можете просто использовать 'response.cookies' и вернуть словарь. – Blender

ответ

1

Использование http.cookies:

>>> c = "cookie1=xxxyyyzzz;Path=/;Expires=Wed, 03-Feb-2015 08:03:12 GMT;Secure;HttpOnly, cookie2=abcdef;Path=/;Secure" 
>>> from http.cookies import SimpleCookie 
>>> cookie = SimpleCookie() 
>>> cookie.load(c) 
>>> cookie 
<SimpleCookie: cookie1='xxxyyyzzz' cookie2='abcdef'> 
>>> {key: value.value for key, value in cookie.items()} 
{'cookie1': 'xxxyyyzzz', 'cookie2': 'abcdef'} 
0
def parse_dict_cookies(value): 
    result = {} 
    for item in value.split(';'): 
     item = item.strip() 
     if not item: 
      continue 
     if '=' not in item: 
      result[item] = None 
      continue 
     name, value = item.split('=', 1) 
     result[name] = value 
    return result 
Смежные вопросы