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}