📄 Documents: videofetch.readthedocs.io
- 2025-11-21: Released videofetch v0.2.0 - code refactored and extensive support added for downloading videos from many additional platforms.
A fast and lightweight video downloader built entirely in Python! 🚀 If you find this project useful, don't forget to star the repository and help us grow—your support means the world! 🙌
This repository is created solely for learning purposes (commercial use is prohibited). All APIs used here are sourced from public networks. If you wish to download paid videos, please ensure you have a paid membership on the respective video platform (respect copyright, please!). If any content in this repository causes concerns or infringes on copyright, please reach out to me, and I’ll promptly remove it.
The video platforms currently supported for parsing are,
| VideoClient (EN) | VideoClient (CN) | WeChat Article | Search | ParseURL | Download | Core Code |
|---|---|---|---|---|---|---|
| AcFunVideoClient | A站 | click | ❌ | ✔️ | ✔️ | acfun.py |
| PipigaoxiaoVideoClient | 皮皮搞笑 | click | ❌ | ✔️ | ✔️ | pipigaoxiao.py |
| PipixVideoClient | 皮皮虾 | click | ❌ | ✔️ | ✔️ | pipix.py |
| HaokanVideoClient | 好看视频 | click | ❌ | ✔️ | ✔️ | haokan.py |
| TedVideoClient | TED视频 (演讲视频) | click | ❌ | ✔️ | ✔️ | ted.py |
| Ku6VideoClient | 酷6网 | click | ❌ | ✔️ | ✔️ | ku6.py |
| BilibiliVideoClient | 哔哩哔哩 (B站) | click | ❌ | ✔️ | ✔️ | bilibili.py |
| KuaishouVideoClient | 快手 | click | ❌ | ✔️ | ✔️ | kuaishou.py |
| YinyuetaiVideoClient | 音悦台 (官网倒闭ing😭) | click | ❌ | ✔️ | ✔️ | yinyuetai.py |
| BaiduTiebaVideoClient | 百度贴吧 | click | ❌ | ✔️ | ✔️ | baidutieba.py |
| MGTVVideoClient | 芒果TV | click | ❌ | ✔️ | ✔️ | mgtv.py |
| OasisVideoClient | 新浪绿洲 | - | ❌ | ✔️ | ✔️ | oasis.py |
| PearVideoClient | 梨视频 | - | ❌ | ✔️ | ✔️ | pear.py |
| HuyaVideoClient | 虎牙视频 | - | ❌ | ✔️ | ✔️ | huya.py |
| DuxiaoshiVideoClient | 度小视 (全民小视频) | - | ❌ | ✔️ | ✔️ | duxiaoshi.py |
| MeipaiVideoClient | 美拍 | - | ❌ | ✔️ | ✔️ | meipai.py |
| SixRoomVideoClient | 六间房视频 | - | ❌ | ✔️ | ✔️ | sixroom.py |
| WeishiVideoClient | 微视 | - | ❌ | ✔️ | ✔️ | weishi.py |
| ZuiyouVideoClient | 最右 | - | ❌ | ✔️ | ✔️ | zuiyou.py |
| XinpianchangVideoClient | 新片场 | - | ❌ | ✔️ | ✔️ | xinpianchang.py |
| WeSingVideoClient | 全民K歌 | - | ❌ | ✔️ | ✔️ | wesing.py |
| XiguaVideoClient | 西瓜视频 | - | ❌ | ✔️ | ✔️ | xigua.py |
| RednoteVideoClient | 小红书 | - | ❌ | ✔️ | ✔️ | rednote.py |
| WeiboVideoClient | 微博视频 | - | ❌ | ✔️ | ✔️ | weibo.py |
| CCTVVideoClient | 央视网 | - | ❌ | ✔️ | ✔️ | cctv.py |
| SohuVideoClient | 搜狐视频 | click | ❌ | ✔️ | ✔️ | sohu.py |
You have three installation methods to choose from,
# from pip
pip install videofetch
# from github repo method-1
pip install git+https://github.com/CharlesPikachu/videodl.git@master
# from github repo method-2
git clone https://github.com/CharlesPikachu/videodl.git
cd videodl
python setup.py installAlso, some video downloaders depend on Ffmpeg, CBox and N_m3u8DL-CLI, so please make sure both programs are installed and can be invoked directly from your system environment (i.e., they are on your PATH). A quick way to verify this is:
-
For Ffmpeg: open a terminal (or Command Prompt on Windows) and run,
ffmpeg -version
If the installation is correct, you should see detailed version information instead of a "command not found" or "'ffmpeg' is not recognized" error.
-
For CBox and N_m3u8DL-CLI (Windows only for CCTVVideoClient): You only need to download CBox from the GitHub releases and add the path to cbox to your environment variables. If you don’t need to download the highest-quality videos from CCTV, you don’t need to install this library. If your downloader calls it from the command line, you should also be able to run
python -c "import shutil; print(shutil.which('cbox'))" python -c "import shutil; print(shutil.which('N_m3u8DL-CLI'))"
in Command Prompt and get the full path without an error. If the N_m3u8DL-CLI version is not compatible with your system, please download the appropriate one from the N_m3u8DL-CLI official website yourself.
After a successful installation, you can run the snippet below,
from videodl import videodl
video_client = videodl.VideoClient()
video_client.startparseurlcmdui()The demonstration is as follows,
- Games: Create interesting games in pure python.
- DecryptLogin: APIs for loginning some websites by using requests.
- Musicdl: A lightweight music downloader written in pure python.
- Videodl: A lightweight video downloader written in pure python.
- Pytools: Some useful tools written in pure python.
- PikachuWeChat: Play WeChat with itchat-uos.
- Pydrawing: Beautify your image or video.
- ImageCompressor: Image compressors written in pure python.
- FreeProxy: Collecting free proxies from internet.
- Paperdl: Search and download paper from specific websites.
- Sciogovterminal: Browse "The State Council Information Office of the People's Republic of China" in the terminal.
- CodeFree: Make no code a reality.
- DeepLearningToys: Some deep learning toys implemented in pytorch.
- DataAnalysis: Some data analysis projects in charles_pikachu.
- Imagedl: Search and download images from specific websites.
- Pytoydl: A toy deep learning framework built upon numpy.
- NovelDL: Search and download novels from some specific websites.
| WeChat Appreciation QR Code (微信赞赏码) | Alipay Appreciation QR Code (支付宝赞赏码) |
|---|---|
![]() |
![]() |




