/
githubmirror
/
nbs
Обзор
Документация
Войти
/
githubmirror
/
nbs
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
contrib/python/websocket-client/py2/websocket/_cookiejar.py
78 строк
3 KB
Anton Myagkov
Update ydb version to 24.4 (#4579)
07 фев 2026, 11:59
Не верифицирован
07 фев 2026, 11:59
2c21cae
Код
Авторство
О чём код?
""" """ """ websocket - WebSocket client library for Python Copyright (C) 2010 Hiroki Ohtani(liris) This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details. You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA """ try: import Cookie except: import http.cookies as Cookie class SimpleCookieJar(object): def __init__(self): self.jar = dict() def add(self, set_cookie): if set_cookie: try: simpleCookie = Cookie.SimpleCookie(set_cookie) except: simpleCookie = Cookie.SimpleCookie(set_cookie.encode('ascii', 'ignore')) for k, v in simpleCookie.items(): domain = v.get("domain") if domain: if not domain.startswith("."): domain = "." + domain cookie = self.jar.get(domain) if self.jar.get(domain) else Cookie.SimpleCookie() cookie.update(simpleCookie) self.jar[domain.lower()] = cookie def set(self, set_cookie): if set_cookie: try: simpleCookie = Cookie.SimpleCookie(set_cookie) except: simpleCookie = Cookie.SimpleCookie(set_cookie.encode('ascii', 'ignore')) for k, v in simpleCookie.items(): domain = v.get("domain") if domain: if not domain.startswith("."): domain = "." + domain self.jar[domain.lower()] = simpleCookie def get(self, host): if not host: return "" cookies = [] for domain, simpleCookie in self.jar.items(): host = host.lower() if host.endswith(domain) or host == domain[1:]: cookies.append(self.jar.get(domain)) return "; ".join(filter( None, sorted( ["%s=%s" % (k, v.value) for cookie in filter(None, cookies) for k, v in cookie.items()] )))