Google Chrome - Get cookies.txt LOCALLY - экспорт куки в формате json и Netscape - 2026
Published: 2026-07-25
Get cookies.txt LOCALLY — бесплатное расширение для Google Chrome (и Firefox) с открытым исходным кодом, предназначенное для экспорта cookie-файлов браузера в форматы Netscape (cookies.txt) и JSON. Расширение работает полностью локально и не передаёт данные на внешние серверы. По состоянию на 2026 год это самое популярное решение для экспорта куков, у более 700 000 пользователей и рейтинг 4,8 в Chrome Web Store.
Обзор
Расширение разработано автором под псевдонимом kairi003 и опубликовано на GitHub (репозиторий) под лицензией MIT. Исходный код полностью открыт и не обфусцирован, что позволяет любому желающему проверить его безопасность.
Ключевые характеристики:
- Версия: 0.7.2
- Манифест: Chrome Manifest V3
- Пользователей в Chrome Web Store: 700 000+
- Рейтинг: 4,8 / 5,0 (102 оценки)
- Звёзд на GitHub: 1 090
- Форков: 115
- Коммитов: 167
- Доступно для: Google Chrome, Mozilla Firefox
Форматы экспорта
Расширение поддерживает три формата экспорта cookie:
| Формат | Расширение | MIME-тип | Применение |
|---|---|---|---|
| Netscape | .txt | text/plain | curl, wget, MozillaCookieJar (Python3), HTTP-клиенты |
| JSON | .json | application/json | Программная обработка, API-интеграции, Puppeteer/Playwright |
| Header | .txt | text/plain | Cookie-строки для HTTP-заголовков (key=value;) |
Формат Netscape является стандартом де-факто для cookie-файлов, используемых в командной строке. Каждая строка содержит семь полей, разделённых табуляцией: domain, includeSubdomain, path, secure, expiration (unix timestamp), name, value. Файл начинается с заголовка "# Netscape HTTP Cookie File".
Формат JSON представляет массив объектов cookie в стандартном представлении Chrome.cookies.Cookie. Удобен для экспорта в скрипты и программы.
Формат Header генерирует строку для передачи в HTTP-заголовок Cookie, разделяя пары name=value точкой с запятой.
Функциональные возможности
Экспорт
Расширение предоставляет несколько вариантов выгрузки cookie:
- Export — экспорт cookie текущего домена в формате по умолчанию
- Export As — экспорт с выбором формата перед сохранением
- Export All Cookies — экспорт cookie со всех доменов
- Copy — копирование cookie текущего домена в буфер обмена
Интерфейс
Всплывающее окно расширения отображает:
- Текущий URL активной вкладки
- Количество cookie для текущего домена (значок на панели расширения)
- Кнопки экспорта и копирования
- Выпадающий список выбора формата
- Настройки опций экспорта
Фоновые возможности
- Счётчик cookie на бейдже — автоматическое обновление числа cookie на иконке расширения при переключении вкладок
- Уведомления об обновлениях — при обновлении расширения показывается уведомление со ссылкой на релизы GitHub и кнопкой удаления
- Поддержка incognito — работает в режиме инкогнито (режим split)
Безопасность и конфиденциальность
Главное преимущество расширения — полная локальная обработка данных. Расширение:
- Никогда не передаёт cookie на внешние серверы
- Не имеет telemetry и аналитики
- Не требует регистрации или аккаунта
- Исходный код открыт для инспекции
- Не использует обфускацию кода
Запрашиваемые разрешения:
| Разрешение | Назначение |
|---|---|
| activeTab | Получение URL активной вкладки |
| cookies | Чтение cookie (не запись и не отправка) |
| downloads | Сохранение файла cookie локально |
| notifications | Уведомления об обновлениях |
| <all_urls> | Доступ к cookie всех доменов |
В отличие от многих аналогичных расширений, Get cookies.txt LOCALLY не связан с оригинальным расширением "Get cookies.txt", которое, по отзывам пользователей, было вредоносным. Новая версия является безопасной альтернативой с открытым кодом.
Технические детали
Архитектура
Расширение построено на Chrome Manifest V3 с использованием service worker в качестве фонового скрипта. Код организован в модульную структуру:
| Модуль | Назначение |
|---|---|
| cookie_format.mjs | Сериализация cookie в форматы Netscape, JSON, Header |
| get_all_cookies.mjs | Получение cookie с учётом partitionKey и cookie store |
| save_to_file.mjs | Сохранение текста в файл через chrome.downloads API |
Обработка cookie с partitionKey
Начиная с Chrome 119, браузер поддерживает partitionKey — механизм разделения cookie по контексту (top-level site). Расширение корректно обрабатывает этот параметр, эмулируя поддержку для старых версий Chrome (<119) через дополнительный запрос chrome.cookies.getAll(). В версии 0.7.2 используется расширенный алгоритм, включающий обработку partitioned cookies отдельным вызовом API.
В версии 0.7.2 используется расширенный алгоритм, включающий обработку partitioned cookies отдельным вызовом API.
Поддержка Firefox
Расширение доступно для Firefox (страница в магазине Firefox). Версия для Firefox использует background-скрипт вместо service worker и поддерживает Firefox Container Tabs через cookieStoreId. Логика сохранения файлов адаптирована: Firefox не поддерживает saveAs в popup, поэтому операция выполняется через background-скрипт.
Сравнение с аналогами
| Расширение | GitHub звёзд | Форматы | Manifest | Особенности |
|---|---|---|---|---|
| Get cookies.txt LOCALLY | 1 090 | Netscape, JSON, Header | V3 | 700K+ пользователей, open-source, Firefox |
| Cookie.txt Export — LOCALLY | — | Netscape | V3 | 608 пользователей, только Netscape |
| Export Cookies (kodopik) | 1 | Netscape | V3 | Простейший экспорт, только .txt |
Известные ограничения
- Chrome < 119: невозможность чтения некоторых cookie с partition key из-за бага в API
- HttpOnly cookie: расширение не может экспортировать HttpOnly cookie (ограничение API Chrome)
- SameSite: информация о SameSite-атрибуте не включается в Netscape-формат (спецификация формата)
- За один раз можно экспортировать cookie только из одного cookie store
Использование экспортированных cookie
curl
curl -b cookies.txt https://example.com
wget
wget --load-cookies cookies.txt https://example.com
Python (MozillaCookieJar)
from http.cookiejar import MozillaCookieJar
from urllib.request import Request, urlopen
cj = MozillaCookieJar('cookies.txt')
cj.load()
req = Request('https://example.com')
cj.add_cookie_header(req)
response = urlopen(req)
Puppeteer / Playwright (JSON-формат)
Экспортированный JSON можно импортировать в headless-браузеры:
const cookies = JSON.parse(fs.readFileSync('cookies.json', 'utf8'));
await page.setCookie(...cookies);
Установка
Chrome Web Store
Расширение доступно по адресу Chrome Web Store. Достаточно нажать "Add to Chrome" и подтвердить разрешения.
Firefox Add-ons
Страница в магазине Firefox: Firefox Addons.
Установка из исходного кода
git clone https://github.com/kairi003/Get-cookies.txt-Locally.git cd Get-cookies.txt-Locally # Загрузить в Chrome: chrome://extensions → Режим разработчика → Загрузить распакованное расширение
Часто задаваемые вопросы (FAQ)
Безопасно ли это расширение? Да. Расширение имеет открытый исходный код, не обфусцировано и не отправляет данные на внешние серверы.
Чем это отличается от старого "Get cookies.txt"? Старое расширение, по сообщениям пользователей, содержало вредоносный код. Get cookies.txt LOCALLY — полностью новая, безопасная реализация с открытым исходным кодом.
Поддерживается ли Firefox? Да, расширение доступно для Firefox и поддерживает Container Tabs.
Как экспортировать cookie всех сайтов сразу? Нажмите кнопку "Export All Cookies" в интерфейсе расширения.
В каком формате лучше экспортировать? Для curl/wget используйте Netscape (.txt). Для программной обработки — JSON. Для HTTP-заголовков — Header.
Работает ли расширение в режиме инкогнито? Да, необходимо включить разрешение "В режиме инкогнито" в настройках расширения.
Резюме
Get cookies.txt LOCALLY — это наиболее популярное, безопасное и функциональное расширение для экспорта cookie в Google Chrome и Mozilla Firefox. С открытым исходным кодом, поддержкой трёх форматов (Netscape, JSON, Header) и более 700 000 пользователей, оно является стандартом де-факто для извлечения cookie-файлов. Расширение работает полностью локально, не собирает телеметрию и не требует регистрации. Благодаря модульной архитектуре на Manifest V3, поддержке partitionKey и совместимости с Firefox Container Tabs, оно остаётся актуальным инструментом для веб-разработчиков, специалистов по автоматизации и security-исследователей в 2026 году.
