I'm trying to make a cookie scanner that gets all cookies from a website. My approach was to open a website with Selenium ChromeDriver and read the sqlite3 database which the Chrome browser creates.
My problem is that the database is apparently empty, but in the Chrome browser window, I can see the cookies.
Here is my code and a screenshot of the browser:
from selenium import webdriver
import os, shutil, sqlite3
browser_list_place = 0
browser_list = []
profiles_folder = "profiles"
def getcookies(url):
if os.path.isdir(profiles_folder):
shutil.rmtree(profiles_folder)
co = webdriver.ChromeOptions()
co.add_argument("--no-sandbox")
co.add_argument("--user-data-dir=" + profiles_folder + "/" + str(browser_list_place))
browser_list.append(webdriver.Chrome('D:\crawler\chromedriver.exe', options=co))
browser_list[browser_list_place].set_page_load_timeout(30)
browser_list[browser_list_place].get(url)
#browser_list[browser_list_place].quit()
for folder in range(0, browser_list_place + 1):
con = sqlite3.connect(profiles_folder + "/" + str(folder) + "/Default/Cookies")
cur = con.cursor()
cur.execute("SELECT * FROM cookies")
rows = cur.fetchall()
for row in rows:
print(row)
getcookies('https://developer.mozilla.org/de/')
Why is the database empty for my program?