53 lines
1.3 KiB
Python
53 lines
1.3 KiB
Python
import argparse
|
|
import json
|
|
import sys
|
|
import browser_cookie3
|
|
|
|
def get_cookies(url):
|
|
"""
|
|
Get cookies from Chrome for a specific URL
|
|
|
|
Args:
|
|
url (str): The URL to get cookies for
|
|
|
|
Returns:
|
|
dict: Dictionary of cookies
|
|
"""
|
|
try:
|
|
# Extract domain from url
|
|
if url.startswith('http://'):
|
|
domain = url[7:].split('/')[0]
|
|
elif url.startswith('https://'):
|
|
domain = url[8:].split('/')[0]
|
|
else:
|
|
domain = url.split('/')[0]
|
|
|
|
# Get cookies from Chrome
|
|
chrome_cookies = browser_cookie3.chrome(domain_name=domain)
|
|
|
|
# Convert cookies to dictionary
|
|
cookies = {}
|
|
for cookie in chrome_cookies:
|
|
cookies[cookie.name] = cookie.value
|
|
|
|
return cookies
|
|
except Exception as e:
|
|
print(f"Error: {e}")
|
|
sys.exit(1)
|
|
|
|
def main():
|
|
parser = argparse.ArgumentParser(description='Extract cookies from Chrome for a specific URL')
|
|
parser.add_argument('--url', type=str, required=True, help='URL to extract cookies from')
|
|
|
|
args = parser.parse_args()
|
|
|
|
cookies = get_cookies(args.url)
|
|
|
|
if cookies:
|
|
print(json.dumps(cookies, indent=4))
|
|
else:
|
|
print("No cookies found for this URL")
|
|
|
|
if __name__ == "__main__":
|
|
main()
|