A lightweight, pure-Python video downloader for Windows, macOS and Linux that parses and downloads videos from platforms such as Douyin, Kuaishou, Xiaohongshu, Bilibili, TikTok and YouTube via CLI or Python API, solving cross-platform high-quality video acquisition and batch downloading
- checkvideodldaily
- Published at
- Apr 8, 2026
- 2,970
- Stars
- 5,194
- Download
- Synced at
- Oct 4, 2026
The author no longer ships through GitHub Releases, but the repository is still active (last push Oct 3, 2026). Get the latest version from: Project homepage
Latest release
checkvideodldailyApr 8, 2026, 03:33 PMREADME
Project Overview
VideoDL (installed as the videofetch package) is a lightweight video downloader written entirely in Python. It can parse and download videos from a large number of streaming platforms such as Douyin, Kuaishou, Xiaohongshu, Bilibili, TikTok and YouTube, aiming for high-quality, watermark-free results. It works both as a command-line tool and as a Python library that can be embedded into your own scripts. The project is intended for learning and research only, and commercial use is prohibited.
A pure-Python video parser and downloader that covers more than a hundred streaming platforms
Key Features
- Broad platform support: A large set of platform-specific clients covers Douyin, Kuaishou, Xiaohongshu, Bilibili, Youku, Tencent, iQiyi, MGTV, Migu, YouTube, TikTok, Twitter and more
- Generic parsers: Many general-purpose parsers let you attempt sites that are not in the dedicated list
- Two usage modes: Ships both the videodl command-line tool and the videodl.VideoClient Python API
- Parse then download: Parse a URL into video info, inspect it, and download afterwards
- Download acceleration: Works with FFmpeg, N_m3u8DL-RE and aria2c for HLS streams, encrypted streams and resumable downloads
- Flexible configuration: Supports custom headers, proxies, cookies, output directories and per-client thread counts
Target Audience
- Developers: who need to integrate URL parsing and downloading into their own programs
- Researchers: who need to collect and organize video data for dataset construction
- Enthusiasts: who want to save online videos they are permitted to access for offline viewing
Quick Start
- Install the package: run pip install videofetch
- Install FFmpeg (required for HLS streams); optionally add N_m3u8DL-RE, aria2c, Node.js and Bento4 for extra capability
- Download a video directly: run videodl -i "https://www.acfun.cn/v/ac36491489"
- Run videodl without -i to enter interactive mode and paste a link at the prompt
- Or use Python: videodl.VideoClient().download(video_client.parsefromurl("URL"))
Core Advantages
- Pure Python: No compilation step and clear dependencies make it easy to read, modify and embed
- Wide coverage: Dedicated clients plus generic parsers handle more unconventional sites
- Programmable: Parsing and downloading are decoupled, so workflows can be customized
- Optional acceleration: External tools can speed up large files and streaming downloads
System Requirements
| Item | Requirement |
|---|---|
| OS | Windows, macOS or Linux |
| Runtime | Python 3 |
| Architecture | Cross-platform (x64 and ARM) |
| External tools | FFmpeg recommended; N_m3u8DL-RE, aria2c, Node.js and Bento4 optional |
Notes
- Learning only: This project is for learning and exchange only; commercial use is prohibited
- Respect copyright: Make sure you hold a valid membership before downloading paid videos
- API sources: All APIs come from public networks; contact the author if any content infringes
- Dependency availability: Without FFmpeg and similar tools, some platforms may fail to parse or download