Есть ли способ получить доступ к файлам cookie, хранящимся в Chrome, из программы Java
Вот моя идеальная ситуация. Я захожу на сайт www.philstockworld.com, используя Chrome. После входа в систему я запускаю Java-приложение, которое использует файлы cookie, только что сохраненные Chrome. Тогда мое приложение Java начинает работать. Вот мой вопрос.
Вот что теперь может делать моя программа: я могу войти на сайт, используя любой браузер, который мне нужен, затем найти значение файла cookie PHPSESSID и запустить мое приложение, используя это значение. Тогда мое приложение может делать то, что ему нужно. Я также могу снабдить свое приложение своим именем пользователя и паролем и войти в него, затем сохранить возвращенный файл cookie PHPSESSID и сделать то, что ему нужно. Однако я хотел бы, чтобы я вошел на веб-сайт с помощью браузера, затем мое приложение запускается и использует файл cookie PHPSESSID из сеанса браузера, и мне не нужно искать его и копировать.
Есть ли способ для моего java-приложения получить значение этого куки, без необходимости вручную вводить его?
3 ответа
Расположение файла Cookies:
В Linux:
$HOME/.config/google-chrome/Default/Cookies
Для других ОС см. Страницу данных пользователя на chromium.org.
Тем не менее, файл хранится в двоичном формате, поэтому вам будет сложно загрузить данные в него.
Ответ Джоэла говорит вам, где хранятся данные cookie. Эти данные являются файлом базы данных sqlite3. Смотрите этот вопрос о том, как читать базу данных sqlite3.
Я не могу найти, как / где Chrome хранит куки, по крайней мере в Linux. Скорее всего, они не будут кэшироваться как простые текстовые файлы и поэтому не будут легко читаемыми. Вы говорите, что не хотите жестко кодировать свое имя пользователя / пароль в своем java-приложении - но зачем вам это делать? Вы могли бы просто передать их в качестве аргументов в ваше приложение?