# jiji262/douyin-downloader

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/jiji262-douyin-downloader).**

6,602 stars · 1,025 forks · Python

## Links

- GitHub: https://github.com/jiji262/douyin-downloader
- awesome-repositories: https://awesome-repositories.com/repository/jiji262-douyin-downloader.md

## Description

This is a tool for downloading videos, images, and audio from the Douyin social media platform using shareable URLs or profile links. It can download individual posts, entire user profiles including all posts and liked content, collections, and music tracks, with options for watermark-free and high-quality output. The tool also supports live stream recording, comment collection, and keyword-based content search with JSONL export.

The project distinguishes itself through an integrated REST API server that accepts download and transcription requests, tracks job status, and exposes health check endpoints. It includes browser-based authentication for accessing restricted content, a SQLite deduplication database to avoid re-downloading across sessions, and a webhook notification system that sends completion alerts to messaging platforms. An exponential backoff retry mechanism improves download reliability, while YAML configuration controls concurrency, rate limits, and download behavior.

Additional capabilities include audio extraction from downloaded videos using a bundled ffmpeg binary, with optional transcription via the Whisper speech recognition model or an OpenAI-compatible API. The tool can handle CAPTCHA challenges through a browser fallback and supports incremental downloads that skip already-fetched content. Configuration and authentication are managed through YAML files and browser cookies.

## Tags

### Graphics & Multimedia

- [Video Downloaders](https://awesome-repositories.com/f/graphics-multimedia/video-downloaders.md) — Downloads videos, images, and audio from Douyin using shareable URLs or IDs with watermark-free options.
- [Batch Downloading](https://awesome-repositories.com/f/graphics-multimedia/streaming-distribution/streaming-broadcasting/media-streaming/playlist-aggregators/playlist-content-retrievers/batch-downloading.md) — Downloads all posts, likes, collections, or music from a user profile in a single batch operation. ([source](https://github.com/jiji262/douyin-downloader/blob/main/README.md))
- [Music Downloaders](https://awesome-repositories.com/f/graphics-multimedia/audio-music/music-utilities/music-downloaders.md) — Downloads music tracks and collections from a social media platform using identifiers. ([source](https://github.com/jiji262/douyin-downloader/blob/main/README.md))
- [Download Behavior Configurations](https://awesome-repositories.com/f/graphics-multimedia/download-output-configuration/download-behavior-configurations.md) — Controls concurrency, retries, rate limits, time filters, and incremental downloads through a YAML configuration file. ([source](https://github.com/jiji262/douyin-downloader/blob/main/README.md))
- [FFmpeg Wrappers](https://awesome-repositories.com/f/graphics-multimedia/ffmpeg-wrappers.md) — Extracts audio tracks from downloaded videos using a bundled ffmpeg binary for transcription or processing.
- [URL Image Downloaders](https://awesome-repositories.com/f/graphics-multimedia/media-processing-analysis/media-downloaders/url-image-downloaders.md) — Downloads images from social media posts using shareable URLs. ([source](https://github.com/jiji262/douyin-downloader/blob/main/.dockerignore))
- [Audio Track Extraction](https://awesome-repositories.com/f/graphics-multimedia/media-processing-analysis/media-manipulation/media-processing-workflows/audio-analysis-synthesis/audio-feature-extraction/audio-track-extraction.md) — Pulls audio from downloaded videos using a bundled ffmpeg binary for further processing. ([source](https://github.com/jiji262/douyin-downloader/blob/main/pyproject.toml))
- [Audio Track Extraction](https://awesome-repositories.com/f/graphics-multimedia/video-content-repurposing/video-clip-extraction/audio-track-extraction.md) — Extracts audio tracks from downloaded videos using a bundled ffmpeg binary for transcription or processing. ([source](https://github.com/jiji262/douyin-downloader/blob/main/requirements.txt))

### Part of an Awesome List

- [Download Deduplicators](https://awesome-repositories.com/f/awesome-lists/media/downloaders/download-deduplicators.md) — Uses a SQLite database and local file checks to avoid re-downloading already-fetched content across sessions. ([source](https://github.com/jiji262/douyin-downloader#readme))

### Content Management & Publishing

- [Bulk Content Export](https://awesome-repositories.com/f/content-management-publishing/bulk-content-export.md) — Downloads all posts, likes, collections, or music from a user's profile page in a single operation. ([source](https://github.com/jiji262/douyin-downloader/blob/main/README.zh-CN.md))
- [Community Content Downloaders](https://awesome-repositories.com/f/content-management-publishing/community-content-feeds/community-content-downloaders.md) — Retrieves all posts, liked content, or mixes from a specific user account. ([source](https://github.com/jiji262/douyin-downloader/blob/main/AGENTS.md))
- [Profile Content Downloaders](https://awesome-repositories.com/f/content-management-publishing/community-content-feeds/community-content-downloaders/profile-content-downloaders.md) — Downloads all posts, likes, mixes, or music from a user profile in a single batch operation. ([source](https://github.com/jiji262/douyin-downloader#readme))
- [Comment Extractors](https://awesome-repositories.com/f/content-management-publishing/content-aggregation-curation/comment-systems/comment-extractors.md) — Retrieves comment threads and replies from social media posts and saves them as JSON. ([source](https://github.com/jiji262/douyin-downloader#readme))
- [Stream Recorders](https://awesome-repositories.com/f/content-management-publishing/media-management/live-streaming-platforms/stream-recorders.md) — Captures live streams as FLV files, preserving partial data on interruption. ([source](https://github.com/jiji262/douyin-downloader#readme))

### Data & Databases

- [Profile Batch Downloaders](https://awesome-repositories.com/f/data-databases/bulk-data-operations/atomic-batch-operations/profile-batch-downloaders.md) — Fetches all posts, likes, collections, or music from a user profile in a single batch operation for bulk archiving.
- [Keyword Search](https://awesome-repositories.com/f/data-databases/search-indexing-technologies/search-indexing/search-information-retrieval/matching-ranking-logic/keyword-search.md) — Fetch the hot search board or search videos by keyword, outputting results as JSONL. ([source](https://github.com/jiji262/douyin-downloader#readme))
- [Search Result Exporters](https://awesome-repositories.com/f/data-databases/search-result-aggregators/search-result-exporters.md) — Searches for videos by keyword or fetches trending content, exporting results as JSONL files.
- [Platform](https://awesome-repositories.com/f/data-databases/search-result-aggregators/search-result-exporters/platform.md) — Search by keyword or fetch the hot search board, dumping results as JSONL files for analysis. ([source](https://github.com/jiji262/douyin-downloader/blob/main/README.md))
- [Trending Content Exporters](https://awesome-repositories.com/f/data-databases/search-result-aggregators/search-result-exporters/trending-content-exporters.md) — Retrieve the current hot board or keyword search results and export them as JSONL files. ([source](https://github.com/jiji262/douyin-downloader/blob/main/README.zh-CN.md))

### Security & Cryptography

- [Cookie Synchronization](https://awesome-repositories.com/f/security-cryptography/session-cookie-handlers/cookie-synchronization.md) — Authenticates requests using browser cookies to access restricted or private content without manual login. ([source](https://github.com/jiji262/douyin-downloader/blob/main/AGENTS.md))
- [Browser-Based Authentication Strategies](https://awesome-repositories.com/f/security-cryptography/browser-based-authentication-strategies.md) — Automates browser-based login to access restricted or private content on the platform. ([source](https://github.com/jiji262/douyin-downloader/blob/main/pyproject.toml))

### System Administration & Monitoring

- [Download Job Servers](https://awesome-repositories.com/f/system-administration-monitoring/server-health-checks/local-api-servers/download-job-servers.md) — Starts a local HTTP server that accepts download and transcription requests and tracks job status through API endpoints.
- [Local API Servers](https://awesome-repositories.com/f/system-administration-monitoring/server-health-checks/local-api-servers.md) — Provides a local HTTP server that accepts download requests and exposes a health check endpoint. ([source](https://github.com/jiji262/douyin-downloader/blob/main/README.zh-CN.md))

### Web Development

- [Video Downloaders](https://awesome-repositories.com/f/web-development/download-managers/video-downloaders.md) — Downloads multiple videos at once, stripping watermarks from each file automatically. ([source](https://github.com/jiji262/douyin-downloader/blob/main/pyproject.toml))
- [Retry and Backoff Logic](https://awesome-repositories.com/f/web-development/http-client-wrappers/retry-and-backoff-logic.md) — Retries failed downloads with exponential backoff to improve reliability and reduce manual intervention. ([source](https://github.com/jiji262/douyin-downloader#readme))
- [Local API Servers](https://awesome-repositories.com/f/web-development/local-api-servers.md) — Starts a local HTTP server that accepts download and transcription requests with job tracking. ([source](https://github.com/jiji262/douyin-downloader/blob/main/pyproject.toml))

### Artificial Intelligence & ML

- [Audio Transcription](https://awesome-repositories.com/f/artificial-intelligence-ml/audio-transcription.md) — Extracts audio from downloaded videos and generates text transcripts using speech recognition models.
- [Transcription APIs](https://awesome-repositories.com/f/artificial-intelligence-ml/audio-transcription/transcription-apis.md) — Sends extracted audio to an OpenAI-compatible transcription endpoint to generate text captions. ([source](https://github.com/jiji262/douyin-downloader/blob/main/pyproject.toml))
- [Whisper-Based Engines](https://awesome-repositories.com/f/artificial-intelligence-ml/speech-to-text-engines/whisper-based-engines.md) — Generates text transcripts from downloaded video audio using the Whisper speech recognition model. ([source](https://github.com/jiji262/douyin-downloader/blob/main/AGENTS.md))

### Development Tools & Productivity

- [REST API Clients](https://awesome-repositories.com/f/development-tools-productivity/rest-apis/rest-api-clients.md) — Provides a local REST API server that accepts download requests and tracks job status. ([source](https://github.com/jiji262/douyin-downloader/blob/main/README.md))
- [Task Completion Notifications](https://awesome-repositories.com/f/development-tools-productivity/task-completion-notifications.md) — Push a success or failure notification to Bark, Telegram, or a custom webhook after a download finishes. ([source](https://github.com/jiji262/douyin-downloader/blob/main/README.zh-CN.md))

### Networking & Communication

- [Download Workflow Servers](https://awesome-repositories.com/f/networking-communication/download-automation/download-workflow-servers.md) — Runs a local HTTP server to accept download requests, track job status, and send completion notifications.
- [Download Traffic Controllers](https://awesome-repositories.com/f/networking-communication/download-traffic-controllers.md) — Control the number of simultaneous downloads to avoid overwhelming the network or the source server. ([source](https://github.com/jiji262/douyin-downloader/blob/main/AGENTS.md))

### Software Engineering & Architecture

- [YAML Configuration Files](https://awesome-repositories.com/f/software-engineering-architecture/application-lifecycle-management/configuration-management/configuration-formats-and-schemas/yaml-configuration-files.md) — Controls download behavior, concurrency, retries, and rate limits through a YAML configuration file.

### User Interface & Experience

- [Download Completion Alerts](https://awesome-repositories.com/f/user-interface-experience/alerts-notifications/download-completion-alerts.md) — Push download success or failure alerts to Bark, Telegram, or a custom webhook URL. ([source](https://github.com/jiji262/douyin-downloader#readme))
