From 041eb68b05d1fcd1ecdb0fa74b727e27051588dd Mon Sep 17 00:00:00 2001 From: g1879 Date: Tue, 8 Dec 2020 14:17:02 +0800 Subject: [PATCH] =?UTF-8?q?=E6=94=B9=E8=BF=9Bcookies=E4=BC=A0=E9=80=92?= =?UTF-8?q?=E9=80=BB=E8=BE=91=EF=BC=8Cs=E8=BD=ACd=E6=97=B6=E5=9F=9F?= =?UTF-8?q?=E4=B8=BA=E7=A9=BA=E7=9A=84cookie=E4=BC=9A=E8=87=AA=E5=8A=A8?= =?UTF-8?q?=E8=AE=BE=E7=BD=AE=E5=9F=9F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- DrissionPage/drission.py | 12 +++++++++++- DrissionPage/session_page.py | 9 ++++++--- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/DrissionPage/drission.py b/DrissionPage/drission.py index e305a54..3176164 100644 --- a/DrissionPage/drission.py +++ b/DrissionPage/drission.py @@ -245,9 +245,19 @@ class Drission(object): :param url: 作用域 :return: None """ + if self.driver.current_url != url: + self.driver.get(url) + url = extract(url) domain = f'{url.domain}.{url.suffix}' - cookies = tuple(x for x in self.session.cookies if domain in x.domain) + + cookies = [] + for cookie in self.session.cookies: + if cookie.domain == '': + cookie.domain = domain + + if domain in cookie.domain: + cookies.append(cookie) self.set_cookies(cookies, set_driver=True) diff --git a/DrissionPage/session_page.py b/DrissionPage/session_page.py index ca7ca0c..060e50d 100644 --- a/DrissionPage/session_page.py +++ b/DrissionPage/session_page.py @@ -77,9 +77,12 @@ class SessionPage(object): if all_domains: cookies = self.session.cookies else: - url = extract(self.url) - domain = f'{url.domain}.{url.suffix}' - cookies = tuple(x for x in self.session.cookies if domain in x.domain) + if self.url: + url = extract(self.url) + domain = f'{url.domain}.{url.suffix}' + cookies = tuple(x for x in self.session.cookies if domain in x.domain or x.domain == '') + else: + cookies = tuple(x for x in self.session.cookies) if as_dict: return {x.name: x.value for x in cookies}