Архивация Twitter/X
С 2023 года API X для сбора данных платный. Массовый сбор теперь идёт только через него, например twarc. Без API в 2026 году работают архив своего аккаунта, снимки отдельных постов и скачивание медиа из конкретных постов.
В России сайт X заблокирован Роскомнадзором 4 марта 2022 года (Интерфакс), см. ограничения доступа в России. Советов по обходу блокировок база не даёт.
Какой способ для какой задачи
| Задача | Способ | Результат |
|---|---|---|
| Свои посты, личные сообщения, медиа | Архив X | ZIP: HTML-просмотрщик и данные |
| Посты по запросу или аккаунту, ветки обсуждений | twarc и платный API | JSONL |
| Пост уже удалён | Wayback Machine | ссылка на снимок |
| Зафиксировать пост с хешами | Auto-Archiver | медиа, метаданные, SHA-256 |
| Видео из поста, запись Spaces | yt-dlp | mp4, *.info.json |
| Картинки поста; медиа всей ленты | gallery-dl, для ленты — cookies своего аккаунта | файлы, JSON |
| Заметки сообщества (Community Notes) | открытая выгрузка | TSV |
| Вид поста или профиля | Browsertrix | WACZ |
Что стало с API в 2023–2026 годах
| Когда | Что произошло | Источник |
|---|---|---|
| Февраль 2023 | Бесплатный доступ к API v1.1 и v2 и программа Academic Research закрыты, подробнее — закрытые API | TechCrunch: 01.02.2023, 14.02.2023 |
| 29 марта 2023 | Новые уровни: Free только для публикации, Basic за $100 в месяц с 10 000 запросов на чтение, Enterprise | TechCrunch |
| 30 октября 2024 | Basic подорожал до $200 в месяц, Pro остался за $5000 | TechCrunch |
| 20 октября 2025 | Закрытый пилот оплаты за использование | X API changelog |
| 5 декабря 2025 | Еврокомиссия оштрафовала X на €120 млн по DSA, в том числе за то, что X не даёт исследователям доступ к публичным данным | Еврокомиссия |
| 6 февраля 2026 | Оплата за использование открыта всем: кредиты покупаются заранее и списываются за каждый объект. Тарифы Basic и Pro сохранены, их подписчики могут перейти на новую модель | X API changelog |
| 15 июля 2026 | Комиссия приняла план X: бесплатный доступ для исследователей, отвечающих условиям DSA. Условия X должны прямо сказать, что таким иссл едователям скрейпинг публичных данных не запрещён. На выполнение — шесть месяцев | Еврокомиссия |
| 24 августа 2026 | X Corp. потребовала удалить экземпляры Nitter | Закрытые API и площадки |
Текущие цены и лимит на чтение — на странице twarc и в X API pricing.
Свой аккаунт
Архив своих данных запрашивают в настройках: x.com/settings/download_your_data. В архиве посты, личные сообщения, медиафайлы, подписчики и списки. Пошагово — Как сохранить данные из Twitter (X).
После удаления аккаунта официальная выгрузка нево зможна. Запросите архив заранее.
Публичные посты
Платный API
Для выборок по запросу, ленте аккаунта или ветке обсуждения нужен платный API. Команды twarc2 search, timeline и conversation описаны на странице twarc.
Wayback Machine
Снимки поста ищут по его адресу через CDX API. Старые снимки лежат под twitter.com, новые — под x.com. Проверяйте оба адреса:
curl "https://web.archive.org/cdx/search/cdx?url=twitter.com/USER/status/ID&output=json&fl=timestamp,original,statuscode&limit=20"
curl "https://web.archive.org/cdx/search/cdx?url=x.com/USER/status/ID&output=json&fl=timestamp,original,statuscode&limit=20"
# последний успешный снимок
curl "https://web.archive.org/cdx/search/cdx?url=x.com/USER/status/ID&filter=statuscode:200&fl=timestamp,original&limit=-1"
Снимок открывается по адресу https://web.archive.org/web/TIMESTAMP/ORIGINAL из полей ответа. Запросы проверены на посте jack/status/20: под twitter.com есть снимки 2008 года, под x.com — снимки с 2024 года, последний — от 14 октября 2026 года.
Выборка по префиксу (twitter.com/USER/status/) возвращает строки о повторных снимках одних и тех же адресов: на проверке в первых 500 строках было 14 разных адресов. С collapse=urlkey такой запрос завершился страницей «Temporarily Offline». Для больших выборок нужна постраничная выдача resumeKey. Как отправить пост на сохранение и обходить большие выборки — на странице Wayback Machine API.
archive.ph
archive.ph быстро сохраняет отдельный пост. С 2026 года его снимки нельзя считать доказательством: оператор сервиса изменял уже сохранённые снимки (Ars Technica). Важный пост сохраняйте ещё и в Wayback Machine или в собственный WACZ.
Auto-Archiver: пост с хешами
Auto-Archiver сохраняет пост по ссылке: медиафайлы, метаданные и хеш SHA-256 каждого файла. Посты X обрабатывает модуль generic_extractor. Для X в нём есть отдельный обработчик на основе экстрактора yt-dlp. Ключи API ему не нужны.
Минимальный secrets/orchestration.yaml для отдельных постов:
steps:
feeders:
- cli_feeder
extractors:
- generic_extractor
enrichers:
- hash_enricher
databases:
- csv_db
storages:
- local_storage
formatters:
- html_formatter
local_storage:
save_to: ./local_archive
hash_enricher:
algorithm: SHA-256
auto-archiver --config secrets/orchestration.yaml -- "https://x.com/USER/status/ID"
- Если yt-dlp не получил пост, обработчик обращается к стороннему сервису
api.fxtwitter.com. Адрес поста при этом уходит третьей стороне. - Модуль
twitter_api_extractorработает через официальный API. Ему нужны bearer-токены или ключи приложения X, то есть платный доступ. - Конфигурация по умолчанию включает модуль обхода антибот-защиты. В примере выше его нет; не добавляйте его, см. Auto-Archiver.
Конфигурация сверена с исходным кодом Auto-Archiver 1.2.9 (
modules/generic_extractor/twitter.py,cli_feeder,hash_enricher,twitter_api_extractor), октябрь 2026.
Медиа: yt-dlp и gallery-dl
Оба инструмента работают через веб-интерфейс X, а не через официальный API. При изменениях на стороне X они могут перестать работать до выхода новой версии.
yt-dlp скачивает видео по ссылке на пост, трансляцию или запись Spaces. Ленту профиля он не обходит.
yt-dlp --write-info-json "https://x.com/USER/status/ID"
Публичный пост скачивается без входа: так проверено в октябре 2026 года. Посты с пометкой о чувствительном содержании и посты закрытых аккаунтов требуют входа. Добавьте --cookies-from-browser firefox с cookies своего аккаунта. Запись Spaces скачивается, только если автор оставил её доступной.
gallery-dl сохраняет картинки и видео вместе с метаданными:
# один пост: работает без входа
gallery-dl --write-metadata "https://x.com/USER/status/ID"
# медиа всей ленты: нужны cookies своего аккаунта
gallery-dl --cookies-from-browser firefox --write-metadata \
--download-archive x-USER.sqlite3 "https://x.com/USER/media"
Без cookies на ленте gallery-dl останавливается с ошибкой AuthRequired: authenticated cookies needed to access this timeline. Вход по логину и паролю gallery-dl для X больше не поддерживает, только cookies из браузера. Берите отдельный аккаунт, см. методику.
Команды сверены с
--helpиextractor/twitter.pyyt-dlp 2026.10.26 и gallery-dl 1.32.18. Пост и лента проверены без cookies в октяб ре 2026 года.
Данные Community Notes
X публикует все заметки сообщества на странице Download Data сайта Community Notes. По документации:
- пять таблиц: заметки, оценки, история статусов заметок, статусы участников, запросы заметок;
- формат TSV со строкой заголовков, таблицы связываются по
noteId; - снимок выходит ежедневно, без гарантий по времени, и включает данные старше 48 часов;
- удалённые заметки и оценки из следующих выгрузок исчезают. В истории статусов остаются метаданные без текста заметки.
Каждая заметка ссылается на пост полем tweetId. Сохраняйте выгрузки с датой: удалённых заметок в новых версиях не будет.
Исследовательский доступ
Программа Academic Research закрыта в 2023 году. В ЕС исследователи, отвечающие условиям DSA, могут запрашивать у X доступ к публичным данным. В декабре 2025 года Еврокомиссия признала, что процедура X ставит им лишние барьеры. В июле 2026 года X обязалась сделать такой доступ бесплатным и ускорить рассмотрение заявок, см. хронологию выше.
Браузерный снимок
Browsertrix сохраняет пост или профиль так, как их видит читатель. Для X в нём есть поведение siteSpecific, оно включено по умолчанию. По документации оно:
- прокручивает ленту и профиль, открывает отдельные посты и цитируемые посты;
- загружает картинки, аудио и видео в полном размере;
- ставит в очередь внешние ссылки из постов архивируемого аккаунта;
- открывает вкладки медиа и скрытый «чувствительный» контент — только с профилем браузера, где выполнен вход.
# один пост, без входа
docker run --rm -v $PWD/crawls:/crawls/ \
webrecorder/browsertrix-crawler:1.15.2 crawl \
--url "https://x.com/USER/status/ID" \
--scopeType page \
--generateWACZ \
--collection x-USER-ID
# профиль и вкладка медиа, с профилем браузера своего аккаунта
docker run --rm -v $PWD/crawls:/crawls/ \
webrecorder/browsertrix-crawler:1.15.2 crawl \
--url "https://x.com/USER" \
--url "https://x.com/USER/media" \
--scopeType page \
--profile /crawls/profiles/x-profile.tar.gz \
--behaviorTimeout 600 \
--generateWACZ \
--collection x-USER
- По умолчанию поведение работает на странице не дольше 90 секунд. Для длинной ленты этого мало, поэтому в примере
--behaviorTimeout 600. - Ссылки, которые поведение ставит в очередь, краулер берёт только в пределах области обхода. При
--scopeType pageих пропускает. Флаг--alwaysAddBehaviorLinksснимает это ограничение, но тогда краулер пойдёт и по внешним ссылкам из постов. - Как создать профиль браузера — раздел «Аутентификация».
Флаги сверены с
cli-options.mdиbehaviors.mdBrowsertrix Crawler 1.15.2 и исходным кодом browsertrix-behaviors 0.15.1 (src/site/twitter.ts), октя брь 2026. Запуск на X не проверялся.
Что больше не работает
snscrape, Twint и Nitter собирали Twitter без API. Все три не работают, см. заброшенные инструменты. Рецепт для X без ключа API и без своего аккаунта, скорее всего, устарел.
Ограничения
- Удалённый пост не вернёт ни один способ, если его не сохранили раньше. Проверьте Wayback Machine.
- Посты закрытого аккаунта видны только его подписчикам. Сохранять их можно только с согласия автора, см. условия использования сервисов.
- Лента в gallery-dl и вкладки медиа в Browsertrix требуют входа. Архив покажет то, что видно вашему аккаунту.