すべてのCookie( httpOnlyおよびセキュアCookieを含む)を取得するためにプラグインを使用する必要はありません。ChromeDriverを使用している場合は、ブラウザのプロファイルフォルダからすべてのCookieを取得できます。
それらは./profile/Default/Cookiesのsqliteデータベースファイルに保存されます
java / seleniumの例:
//set Browsers profile folder with ChromeOptions:
String intendedProfileDestinationPath = "C:/temp/somefolder";
ChromeOptions options = new ChromeOptions();
options.addArguments("user-data-dir="+intendedProfileDestinationPath);
WebDriver driver = new ChromeDriver(options);
//...visit one or more pages...
//use sqlite to access file:
try {
// db parameters
String url = "jdbc:sqlite:"+pathToSqliteCookiesFile;
// create a connection to the database
conn = DriverManager.getConnection(url);
} catch (SQLException e) {
System.out.println(e.getMessage());
}
String sql = "SELECT * FROM cookies";
ResultSet result = conn.createStatement().executeQuery(sql);
//... iterate resultset ...
Maven経由でsqliteドライバーを入手します。
<!-- https://mvnrepository.com/artifact/org.xerial/sqlite-jdbc -->
<dependency>
<groupId>org.xerial</groupId>
<artifactId>sqlite-jdbc</artifactId>
<version>3.28.0</version>
</dependency>
アクセスしたページのCookieのみが必要な場合は、Seleniumブラウザーを再起動するときに、フォルダーの内容全体を削除してください。