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

open-Xdownload — локальный загрузчик медиа для X/Twitter со встроенным веб-интерфейсом и фоновой очередью задач. Поддерживает четыре типа задач — одиночные посты, пользователи, списки и отслеживаемые аккаунты — а также пакетные задачи, запланированные планы, инкрементальное архивирование, повторную попытку при ошибках и пул куки для ротации ограничений API. Ключевые возможности: - Скачивание одиночных постов: вставьте ссылку x.com или twitter.com для разбора текста, автора и списка медиа, затем загрузки лучшей доступной версии каждого изображения, видео или GIF. - Архивирование медиа пользователя: сохраните медиа из временной шкалы пользователя по имени пользователя, @handle или user ID. - Архивирование списков: введите ID списка X для получения участников и архивирования их медиа. - Архивирование отслеживаемых аккаунтов: получите аккаунты, на которые подписан целевой пользователь, и архивируйте медиа этих аккаунтов. - Пакетные задачи: введите до 200 целей (пользователи, списки, отслеживаемые аккаунты) одновременно с автоматическим удалением дубликатов. - Запланированные планы: сохраните цели как повторяющиеся планы архивирования с настраиваемыми интервалами (от 5 до 43200 минут). - Инкрементальное архивирование: продолжайте с последней успешной позиции при повторных запусках; пропускайте уже загруженное медиа. - Обработка ошибок: частичные сбои четко маркируются;_failed_ посты попадают в очередь повтора, которую можно перезапустить вручную или автоматически по завершении задачи. - Пул куки: основной набор куки плюс несколько резервных групп для ротации при превышении ограничений速率 в пакетном архивировании. - Библиотека медиа: просматривайте загруженное медиа по категориям изображений, видео или GIF; поиск по именам файлов, URL медиа и ID постов; ленивая загрузка превью с навигацией с клавиатуры. - Лёгкие превью: изображения загружаются лениво; видео по умолчанию загружают только превью-картинку, монтируя плеер только при увеличенном превью. - Локальное хранение: директория загрузки настраивается через UI или CLI, с возможностью просмотра и создания путей. Варианты развертывания: - Docker Compose (рекомендуется): порты 127.0.0.1:8787, тома для данных и загрузок, настраиваемые PUID/PGID. - Docker run: те же переменные окружения, ручной запуск. - Бинарный файл: загрузите из Releases; слушает 127.0.0.1:8787 по умолчанию, с настраиваемыми флагами addr, data-dir, web-dir и download-dir. Сервис не имеет встроенной аутентификации и привязывается к localhost по умолчанию. Для доступа по LAN необходимо явно установить адрес 0.0.0.0:8787 и разместить сервис за обратным прокси с аутентификацией. Данные хранятся в базе SQLite (open-xdownload.db) и локальных директориях загрузки. Чувствительные поля (куки) маскируются в UI. В резервные копии следует включать как базу данных, так и директорию загрузок. Лицензия: MIT.