|
|
|
@ -495,18 +495,22 @@ class WindowsChromeCookieDecryptor(ChromeCookieDecryptor):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def _extract_safari_cookies(profile, logger):
|
|
|
|
|
if profile is not None:
|
|
|
|
|
logger.error('safari does not support profiles')
|
|
|
|
|
if sys.platform != 'darwin':
|
|
|
|
|
raise ValueError(f'unsupported platform: {sys.platform}')
|
|
|
|
|
|
|
|
|
|
cookies_path = os.path.expanduser('~/Library/Cookies/Cookies.binarycookies')
|
|
|
|
|
if profile:
|
|
|
|
|
cookies_path = os.path.expanduser(profile)
|
|
|
|
|
if not os.path.isfile(cookies_path):
|
|
|
|
|
raise FileNotFoundError('custom safari cookies database not found')
|
|
|
|
|
|
|
|
|
|
else:
|
|
|
|
|
cookies_path = os.path.expanduser('~/Library/Cookies/Cookies.binarycookies')
|
|
|
|
|
|
|
|
|
|
if not os.path.isfile(cookies_path):
|
|
|
|
|
logger.debug('Trying secondary cookie location')
|
|
|
|
|
cookies_path = os.path.expanduser('~/Library/Containers/com.apple.Safari/Data/Library/Cookies/Cookies.binarycookies')
|
|
|
|
|
if not os.path.isfile(cookies_path):
|
|
|
|
|
raise FileNotFoundError('could not find safari cookies database')
|
|
|
|
|
logger.debug('Trying secondary cookie location')
|
|
|
|
|
cookies_path = os.path.expanduser('~/Library/Containers/com.apple.Safari/Data/Library/Cookies/Cookies.binarycookies')
|
|
|
|
|
if not os.path.isfile(cookies_path):
|
|
|
|
|
raise FileNotFoundError('could not find safari cookies database')
|
|
|
|
|
|
|
|
|
|
with open(cookies_path, 'rb') as f:
|
|
|
|
|
cookies_data = f.read()
|
|
|
|
|