Перейти к основному содержимому

Как сохранить данные из WhatsApp

WhatsApp не предоставляет публичного API для исследователей, и официальный «архив» сильно ограничен. Сохранение контента из чатов и каналов возможно несколькими способами, каждый — со своими правовыми и техническими ограничениями.

Предупреждение: WhatsApp и Meta в 2025–2026 усилили защиту от автоматического сбора данных. Часть методов может перестать работать; всегда проверяйте актуальное состояние.

Когда стоит архивировать WhatsApp​

  • Исторические чаты семьи или сообщества, которые удаляются участниками.
  • Архивные каналы (например, новостные рассылки, уведомления).
  • Юридические доказательства — фиксация сообщений для суда.
  • Исследования — анализ социальных сетей и информационных каскадов.

Способы экспорта​

1. Официальный экспорт чата (встроен в WhatsApp)​

WhatsApp позволяет экспортировать отдельный чат (включая свои сообщения) в формате .txt с медиа-вложениями.

Android:

  1. Откройте чат.
  2. Три точки → «Ещё» → «Экспорт чата».
  3. Выберите «С медиафайлами» или «Только текст».
  4. Приложение создаст .zip с текстом и папкой с медиа.

iOS:

  1. Откройте чат.
  2. Имя контакта → «Экспорт чата».
  3. Выберите «С медиа» или «Только текст».
  4. Поделитесь через Mail, Files или мессенджер.

Что входит:

  • Текст сообщений (включая эмодзи).
  • Медиа (фото, видео, документы, голосовые).
  • Геолокации (как latitude;longitude).

Что НЕ входит:

  • Сообщения других участников в групповом чате (если их нет у вас).
  • Удалённые сообщения.
  • Статусы (Stories).
  • Аватарки.
  • Данные контактов.

2. Официальный запрос данных (GDPR / 152-ФЗ)​

Через «Запрос данных» в настройках приложения можно получить полный архив своих данных:

Android:

  1. Настройки → Аккаунт → «Запросить данные аккаунта».
  2. Выберите «Создать отчёт».
  3. Через ~30 дней придёт .zip со всеми вашими данными.

iOS: Аналогично.

Что входит (полнее, чем экспорт чата):

  • Профиль.
  • Список контактов.
  • Все ваши сообщения.
  • Ваши медиа.
  • Данные об устройствах и активности.

Что НЕ входит:

  • Сообщения других людей.
  • Групповые чаты, в которых вы не были.
  • Удалённое.

Юридическая база: GDPR (для пользователей ЕС), 152-ФЗ (для РФ), аналоги в других странах.

3. WhatsApp Business API (только для бизнеса)​

Если у вас зарегистрированный WhatsApp Business API, доступно программное управление через:

# С помощью Facebook Business SDK
from facebook_business.api import FacebookAdsApi
from facebook_business.adobjects.whatsappbusinessaccount import WhatsAppBusinessAccount

# Получить список разговоров
account = WhatsAppBusinessAccount("ACCOUNT_ID")
conversations = account.get_conversations()

for conv in conversations:
print(conv.id, conv.last_message_at)

Требования:

  • Аккаунт Meta Business.
  • Верификация бизнеса.
  • Согласование с Meta.
  • Оплата за шаблоны сообщений (для исходящих).

Когда использовать:

  • Только для официального бизнес-использования.
  • Не для исследований или архивации личных чатов.

4. Локальные резервные копии​

WhatsApp регулярно делает резервные копии в облаке (Google Drive для Android, iCloud для iOS):

Android (Google Drive):

  1. Настройки → Чаты → Резервная копия.
  2. Указано: «хранится в Google Drive».
  3. Можно настроить: никогда / ежедневно / еженедельно / ежемесячно.

iOS (iCloud):

  1. Настройки → Чаты → Резервная копия.
  2. «Включено».

Доступ:

  • Android: скачать резервную копию с Google Drive (google-takeout).
  • iOS: скачать с iCloud (apple-privacy-export).

Содержимое: все сообщения, медиа, групповые чаты, истории (на момент последней копии).

Ограничения:

  • Расшифровка проприетарная; инструментов открытых нет.
  • Android: ключ шифрования хранится на устройстве; нужен root.
  • iOS: зашифрованный бэкап доступен только на iOS.

5. WhatsApp Web / Desktop API (через Selenium/Playwright)​

Для автоматической выгрузки можно использовать эмуляцию браузера:

from playwright.sync_api import sync_playwright

with sync_playwright() as p:
browser = p.chromium.launch(headless=False)
page = browser.new_page()

# Авторизация через QR-код (вручную)
page.goto("https://web.whatsapp.com/")
page.wait_for_load_state("networkidle")

# Перебор сообщений в чате (CSS селекторы)
messages = page.query_selector_all(".message-in, .message-out")
for msg in messages:
text = msg.inner_text()
print(text)

# Скриншот
page.screenshot(path="whatsapp.png")

Юридические риски: автоматизация WhatsApp Web запрещена ToS. Использование только для собственных данных, не для перепродажи или массового скрейпинга.

Технические ограничения:

  • Нельзя отличить «свои» сообщения от чужих без парсинга структуры DOM.
  • Селекторы меняются каждую версию WhatsApp Web.
  • Нужна интерактивная авторизация по QR-коду.

6. Боты для архивирования (Telegram-бот)​

Существуют Bellingcat Auto-Archiver с конфигурацией для WhatsApp-каналов, но они требуют WhatsApp Web cookie.

Рабочий pipeline:

  1. Экспортировать WhatsApp Web cookie через браузер.
  2. Передать в Auto-Archiver через конфиг.
  3. Бот сделает скриншоты и соберёт сообщения.

Ограничения:

  • WhatsApp может ротировать cookie и блокировать сессию.
  • Не работает в headless-режиме (WhatsApp Web блокирует).
  • Группы с большим числом сообщений требуют долгой прокрутки.

Что выбрать​

МетодПолнотаАвтоматизацияЮридический рискКогда
Экспорт отдельного чата✅ в пределах чата❌НизкийРазовая фиксация
GDPR / 152-ФЗ запрос✅ свои данные❌НизкийАрхив собственного аккаунта
WhatsApp Business API⚠️ свои сообщения✅НизкийТолько бизнес
Резервные копии✅ в пределах копии❌СреднийЛичные архивы
Selenium/Playwright⚠️ текущее состояние⚠️ВысокийНе для продакшена
Auto-Archiver⚠️⚠️ВысокийOSINT с разрешения

Типичные сценарии​

Сценарий 1. Семейный архив​

  • Цель: сохранить чаты с родственниками, ушедшими из жизни.
  • Решение: GDPR-запрос + скриншоты чатов из WhatsApp Web.

Сценарий 2. Журналистское расследование​

  • Цель: зафиксировать переписку с источником.
  • Решение: скриншоты + хеш файла + нотаризация (через Perma.cc).

Сценарий 3. Архив канала WhatsApp​

  • Цель: сохранить новостной канал @channel перед его удалением.
  • Решение: сложно; WhatsApp не предоставляет публичного каталога каналов.
  • Альтернатива: попросить редакцию канала сделать экспорт или отслеживать публикации через мобильного агрегатора.

Архив каналов в WhatsApp​

В 2023 году WhatsApp запустил Каналы (аналог Telegram-каналов). У каналов есть медиа-каталог, но нет публичного API.

Архивирование каналов:

  1. Подписаться на канал.
  2. Использовать WhatsApp Web + скриншоты/Selenium.
  3. Либо попросить администратора канала сделать экспорт.

Будущее: ожидается Public API для каналов к 2027 году (по анонсам Meta).

Юридические аспекты​

[!WARNING] WhatsApp запрещает массовый автоматический сбор данных. Перед архивацией проверьте:

  • Цель архивирования (личная, журналистская, исследовательская).
  • Юрисдикция (законы РФ, ЕС, США различаются).
  • Наличие прав на распространение архива.

GDPR / 152-ФЗ: вы имеете право на свои данные. Не на чужие.

ToS WhatsApp: запрещено «использовать автоматизированные средства для доступа к Сервису».

Подробнее: Правовые вопросы.

Хранение архива​

Структура каталога для удобного поиска:

whatsapp-archive-2026/
├── chats/
│ ├── chat-friend-a/
│ │ ├── messages.txt
│ │ └── media/
│ │ ├── photo-2026-01-15.jpg
│ │ └── video-2026-01-15.mp4
│ └── chat-group-x/
│ └── ...
├── channels/
│ ├── channel-news-y/
│ └── ...
├── profile/
│ ├── profile.json # из GDPR-запроса
│ └── avatar.jpg
├── contacts/
│ └── contacts.csv
├── metadata.json # общее описание
└── README.md # контекст, разрешения, даты

Ресурсы​

Связанные материалы​