Skip to main content

Videodl: A lightweight video downloader written in pure python

Project description


📄 Documents: videofetch.readthedocs.io

🆕 What's New

  • 2025-11-21: Released videofetch v0.2.0 - code refactored and extensive support added for downloading videos from many additional platforms.

🚀 Introduction

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! 🙌

📜 Statement

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.

🎥 Supported Video Client

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

📦 Install

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 install

Also, 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.

⚡ Quick Start

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,


💡 Recommended Projects

  • 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.

🌟 Star History

Star History Chart

📱 WeChat Official Account (微信公众号):

Charles的皮卡丘 (Charles_pikachu)
img

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

videofetch-0.2.0.tar.gz (36.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

videofetch-0.2.0-py3-none-any.whl (67.4 kB view details)

Uploaded Python 3

File details

Details for the file videofetch-0.2.0.tar.gz.

File metadata

  • Download URL: videofetch-0.2.0.tar.gz
  • Upload date:
  • Size: 36.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.14

File hashes

Hashes for videofetch-0.2.0.tar.gz
Algorithm Hash digest
SHA256 17e1b2a0ce774f6234e9860cff6307f94959c9a7e2b8dc3b3500745ea79b6f5c
MD5 8508a034694d1483067819876ef3f4a0
BLAKE2b-256 81eff50e9cdd3bd36f38cc45a28cd1accbf80559d63dcd498591d3aefe9a2ed8

See more details on using hashes here.

File details

Details for the file videofetch-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: videofetch-0.2.0-py3-none-any.whl
  • Upload date:
  • Size: 67.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.10.14

File hashes

Hashes for videofetch-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9f208cfa2864d298ec0718f5f818c12ede5f6c1b5a41c786e4aed8af657effab
MD5 8d2574245dffe64126ec91d1b9b73a95
BLAKE2b-256 15d0f4296bc8707d356bdfaf531ace7d50e30f006cfebdad21df118328ec1594

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page