【发布时间】:2019-12-20 23:27:10
【问题描述】:
我正在尝试制作一个从网站获取所有 cookie 的 cookie 扫描器。 我的方法是用 Selenium ChromeDriver 打开一个网站,然后读取 Chrome 浏览器创建的 sqlite3 数据库。
我的问题是数据库显然是空的,但在 Chrome 浏览器窗口中,我可以看到 cookie。
这是我的代码和浏览器的截图:
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/')
为什么我的程序的数据库是空的?
【问题讨论】:
标签: python google-chrome cookies selenium-chromedriver