Sign inSign up

ch1swill/easy-twitter

By ch1swill

Updated 6 months ago

Image
0

511

ch1swill/easy-twitter repository overview

🐦 Easy Twitter

Telegram Bot,自动下载 Twitter/X 视频 — 转发链接即下载,还能自动监控点赞并批量下载。

✨ Features

  • 🔗 链接下载 — 发送 Twitter/X 链接,自动下载视频
  • ❤️ 自动点赞监控 — 轮询指定用户点赞列表,新视频自动下载
  • 🔄 GraphQL 自动发现 — 自动从 X 前端提取最新 API 参数,定时刷新
  • 🗃️ SQLite 去重 — 已下载记录持久化,重启不重复
  • 异步队列 — 多 worker 并发下载

🚀 Quick Start

# docker-compose.yaml
services:
  easy-twitter:
    image: ch1swill/easy-twitter:latest
    container_name: easy-twitter
    restart: unless-stopped
    environment:
      BOT_TOKEN: "your_telegram_bot_token"
      AUTO_LIKES_ENABLED: "false"
      AUTO_LIKES_TARGET_USER: ""
      AUTO_LIKES_POLL_INTERVAL: "300"
      BOT_CLEANUP_MODE: "minimal"
    volumes:
      - ./data/downloads:/data/downloads
      - ./data/logs:/data/logs
      - ./data/state:/data/state
      - ./secrets:/secrets
docker compose up -d

⚙️ Environment Variables

VariableRequiredDefaultDescription
BOT_TOKENTelegram Bot API Token
ALLOWED_USERS(all)Comma-separated Telegram user IDs
HTTP_PROXYHTTP/SOCKS5 proxy
AUTO_LIKES_ENABLEDfalseEnable auto-likes monitoring
AUTO_LIKES_TARGET_USERX username to monitor (no @)
AUTO_LIKES_POLL_INTERVAL300Poll interval in seconds
BOT_CLEANUP_MODEminimalminimal or delete
AUTO_LIKES_MAX_PER_ROUND20Max likes per poll round
AUTO_LIKES_WORKERS2Concurrent download workers
AUTO_DISCOVER_REFRESH_HOURS24GraphQL param refresh interval (hours)

📂 Volumes

Container PathDescription
/data/downloads📥 Downloaded videos
/data/logs📋 Application logs
/data/state🗃️ SQLite database
/secrets🍪 Cookies file (optional, for auto-likes)

🍪 Cookies (Optional)

For auto-likes monitoring, export your X/Twitter cookies in Netscape format and mount as /secrets/cookies.txt.

📄 License

MIT

Tag summary

Content type

Image

Digest

sha256:6a81d7aa2

Size

225.2 MB

Last updated

6 months ago

docker pull ch1swill/easy-twitter