改进cookies传递逻辑,s转d时域为空的cookie会自动设置域

This commit is contained in:
g1879 2020-12-08 14:17:02 +08:00
parent d8a179918a
commit 041eb68b05
2 changed files with 17 additions and 4 deletions

View File

@ -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)

View File

@ -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}