C# 如何防止headless chrome缓存cookies?

C# 如何防止headless chrome缓存cookies?,c#,sqlite,selenium,cookies,google-chrome-headless,C#,Sqlite,Selenium,Cookies,Google Chrome Headless,我正在用selenium C#运行一个带有headless chrome实例的自动化脚本 var chromeOptions = new ChromeOptions(); chromeOptions.AddArgument("headless"); chromeOptions.AddArgument("no-sandbox"); chromeOptions.AddArgument("disable-gpu"); chromeOptions.AddArgum

我正在用selenium C#运行一个带有headless chrome实例的自动化脚本

    var chromeOptions = new ChromeOptions();
    chromeOptions.AddArgument("headless");
    chromeOptions.AddArgument("no-sandbox");
    chromeOptions.AddArgument("disable-gpu");
    chromeOptions.AddArgument("disable-cache");

    driver = new ChromeDriver(".",chromeOptions);
我正在尝试跟踪所有cookie,包括由第三方javascripts发送的cookie。更重要的是,我试图在一个域内跟踪cookies。例如,我想区分www.xyz.com/index上设置的cookies和www.xyz.com/store上设置的cookies

我目前正试图通过导航到www.xyz.com/index,然后在chrome的临时数据文件夹中查询SQLite数据库,然后导航到www.xyz.com/store,然后再次查询SQLite数据库来实现这一点

问题是chrome不会在您导航到某个站点时立即将cookies保存到此数据库。它似乎在缓存cookies,然后每隔30秒左右一次保存所有cookies


我有没有办法强迫chrome不要把饼干抓这么久?理想情况下,我希望chrome在我导航到该站点时立即将cookies保存到SQLite数据库中

您可以使用manage().getCookies()及其相关方法来获取cookie信息,如名称、路径、到期日或域等。保存cookie信息后,您应该能够立即获取该信息。

尝试使用--disk cache dir=null,它只会获取第一方cookie。我需要记录第三方JavaScript执行产生的第三方cookie。