Об этом проекте

Douyin_TikTok_Download_API (DTK) — это open-source, самостоятельно размещаемый API для сбора данных Douyin и TikTok. Он позволяет пользователям получать посты, профили авторов, посты авторов и понравившиеся посты, миксы/плейлисты, комментарии и ответы на комментарии. Для TikTok также можно получать списки подписчиков и подписок. Система скачивает видео и фотоальбомы без водяных знаков, выбирая чистый поток, опубликованный платформой. Ключевые возможности включают: - Самовосстанавливающийся пул идентичностей, который использует headless браузер для создания гостевых идентичностей и пополняется, когда пригодные заканчиваются. - Мониторинг состояния со структурированными записями для каждого запроса, отслеживание состояния идентичностей и endpoint'ов в реальном времени, а также circuit breaker'ы. - Асинхронные вызовы по умолчанию (202 + task_id), с опцией синхронных вызовов. - Архивирование всех распарсенных данных в PostgreSQL + TimescaleDB, обеспечивая доступность контента, удалённого на стороне платформы. - Доступ через REST API (93 операции), MCP server (streamable-http), CLI и веб-консоль на React. - API ключи с областями применения и ролями для контроля доступа. - Поддержка парсинга различных типов ссылок, включая короткие ссылки, URL постов и подписи из буфера обмена. - Скачивание медиафайлов на локальный диск, пакетное скачивание по автору, пропуск дубликатов и очистка. - Функция списка наблюдения для периодического повторного сбора данных об авторах или постах по расписанию. Проект создан с использованием Python 3.12, FastAPI, SQLAlchemy 2.0, React 19 и Go 1.23 для sidecar модуля загрузки. Требуется только PostgreSQL и Redis в качестве внешних зависимостей. Развёртывание осуществляется через Docker Compose, образы доступны для linux/amd64 и linux/arm64. Также предоставляется интерактивный скрипт установки для настройки и управления.