Douyin Downloader V2: Batch Download TikTok Videos & More

Douyin Downloader V2.0: The Complete Guide to Batch Downloading Chinese TikTok Content

What is Douyin Downloader?

Douyin Downloader V2.0 is a powerful, open-source Python tool designed for batch downloading content from Douyin (China's TikTok). With 7.2k GitHub stars and active development, this tool supports videos, image notes, collections, music, favorites, and profile batch downloads – all without watermarks.

Key Features

βœ… Multi-format support: Videos, image-notes, collections, music, favorites βœ… No watermarks: Automatically selects clean video sources βœ… Batch profile downloads: Posts, likes, mixes, music from any user βœ… Browser fallback: Handles pagination blocks with manual CAPTCHA support βœ… SQLite deduplication: Never download duplicates across modes βœ… Concurrent downloads: Configurable threading (default 5) βœ… Progress bars: Rich progress display with quiet mode βœ… Retry logic: Exponential backoff (1s, 2s, 5s) βœ… Docker ready: One-command deployment βœ… Video transcription: Optional OpenAI Whisper integration βœ… Incremental downloads: Resume where you left off βœ… Time filtering: Download by date range

Quick Start (5 Minutes)

# 1. Clone & install
pip install -r requirements.txt

# 2. Copy config
cp config.example.yml config.yml

# 3. Auto-capture cookies
python -m tools.cookie_fetcher --config config.yml

# 4. Run!
python run.py -c config.yml

Minimal Config Example

link:
  - https://www.douyin.com/user/MS4wLjABAAAAxxxx
path: ./Downloaded/
mode:
  - post
  - like
thread: 8
database: true
browser_fallback:
  enabled: true
  headless: false

Real-World Use Cases

1. Creator Archive

Download all posts + likes from your favorite creators:

mode: [post, like]
number:
  post: 0  # unlimited
  like: 0

2. Music Collection

Extract original audio tracks:

link: https://www.douyin.com/music/7341234567890123456

3. Research Dataset

Full profile crawl with transcription:

mode: [post, like, mix]
transcript:
  enabled: true
  model: gpt-4o-mini-transcribe

Advanced Features

Cross-Mode Deduplication

Same aweme_id won't download twice across post/like/mix modes.

Browser Fallback

When APIs block pagination (common after ~20 posts), automatically launches browser for manual scrolling + CAPTCHA solving.

Output Structure

Downloaded/
└── AuthorName/
    β”œβ”€β”€ post/
    β”‚   └── 2024-02-07_Title_aweme123/
    β”‚       β”œβ”€β”€ video.mp4
    β”‚       β”œβ”€β”€ cover.jpg
    β”‚       β”œβ”€β”€ music.mp3
    β”‚       β”œβ”€β”€ data.json
    β”‚       └── transcript.txt
    β”œβ”€β”€ like/
    └── mix/

Docker Deployment

docker build -t douyin-downloader .
docker run -v $(pwd)/config.yml:/app/config.yml -v $(pwd)/Downloaded:/app/Downloaded douyin-downloader

Troubleshooting

"Only 20 posts downloaded?"

browser_fallback:
  enabled: true
  headless: false  # Manual verification needed

"Expired cookies?"

python -m tools.cookie_fetcher --config config.yml

Why Choose This Tool?

  • Production-ready: CI/CD, comprehensive testing
  • Actively maintained: Recent commits (Mar 2026)
  • Feature-complete: Handles edge cases other tools miss
  • MIT License: Free for personal/commercial use

For personal archiving, research, and learning only. Respect platform ToS, copyrights, and privacy rights.

GitHub: jiji262/douyin-downloader

⭐ Star it if you found this useful!

Original Article: View Original

Share this article