Widevine MPD Content Downloader & Decryptor

Overview

Widevine-DL

made-with-python Github All Releases License

Encrypted MPD Manifest Content Downloader + Decryptor (not a Widevine Key Extractor!)

Requirements

  • ffmpeg, yt-dlp, aria2, widevine-l3-decryptor
$ pip install ffmpeg yt-dlp aria2p
  • For Linux Users, it is recommended to install aria2 with apt.
$ sudo apt-get install aria2

Installation & Run

  1. Download and Extract ZIP from Releases
  2. Install Requirements
  3. Run widevine-dl.py
$ python3 widevine-dl.py

Inputs

  • WideVineDecryptor Prompt - Copy from widevine-l3-decryptor extension (exactly like the format below)
WidevineDecryptor: Found key: 100b6c20940f779a4589152b57d2dacb (KID=eb676abbcb345e96bbcf616630f1a3da)
  • MPD URL - MPD URL of Widevine Content
  • VIDEO_ID - Video Track ID Shown in Stream Info (Leave blank for best)
  • AUDIO_ID - Audio Track ID Shown in Stream Info (Leave blank for best)
  • FILENAME - Desired File Name of Final Decrypted File (with extension!)
  • If you only want to download the encrypted content from the MPD File not decrypt it, simply leave the WideVineDecryptor Prompt empty.

Legal Notice

Educational purposes only. Downloading DRM'ed materials may violate their Terms of Service.

If you enjoyed using the script, a star or a follow will be highly appreciated! 😎

Comments
  • ERROR: invalid key id

    ERROR: invalid key id

    hallo, i tried with the srf1 live stream and get invalid key id:

    stream: https://srf1-euwe.akamaized.net/4beefc53-c227-43c0-94eb-8f757547d6ed/srf1.ism/manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr)

    ENTER VIDEO_ID (Press Enter for Best): 1_V_video_9402236402929338845 ENTER AUDIO_ID (Press Enter for Best): 1_V_video_9402236402929338845

    Downloading Encrypted Video from CDN.. [generic] Extracting URL: https://srf1-euwe.akamaized.net/4beefc53-c227-43c0-94eb-8f757547d6ed/srf1.ism/manifest(format=mpd...n=cenc,filter=nodvr) [generic] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Downloading webpage [generic] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Extracting information [info] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Downloading 1 format(s): 1_V_video_9402236402929338845 [dashsegments] Total fragments: 30 [download] Destination: /home/alex/tmp/widevine-dl/cache/encrypted_video.mp4 [download] 100% of 1.77MiB in 00:00:04 at 371.27KiB/s Downloading Encrypted Audio from CDN.. [generic] Extracting URL: https://srf1-euwe.akamaized.net/4beefc53-c227-43c0-94eb-8f757547d6ed/srf1.ism/manifest(format=mpd...n=cenc,filter=nodvr) [generic] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Downloading webpage [generic] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Extracting information [info] manifest(format=mpd-time-csf,encryption=cenc,filter=nodvr): Downloading 1 format(s): 1_V_video_9402236402929338845 [dashsegments] Total fragments: 30 [download] Destination: /home/alex/tmp/widevine-dl/cache/encrypted_audio.mp4 [download] 100% of 1.77MiB in 00:00:04 at 448.27KiB/s

    Decrypting WideVine DRM.. (Takes some time) ERROR: invalid key id ERROR: invalid key id Decryption Complete!

    what can i do to make it worke? thanks anan

    opened by atuctuc 0
  • Cannot find

    Cannot find "mp4decrypt" on mac os

    Issue

    When we execute the script python widevine-dl.py from a terminal, then we got this error on mac

    Decrypting WideVine DRM.. (Takes some time)
    sh: mp4decrypt: command not found
    sh: mp4decrypt: command not found
    

    Question: How do we get such a key ?

    Enter WideVineDecryptor Prompt: 
    > 
    
    opened by cmoulliard 1
  • Python error

    Python error

    I'm on windows 10 and when I try to run the script I get the following.

    Processing Video Info.. Python path configuration: PYTHONHOME = 'C:\widevine-dl' PYTHONPATH = (not set) program name = 'C:\widevine-dl\yt-dlp.exe' isolated = 0 environment = 0 user site = 0 import site = 0 sys._base_executable = 'C:\widevine-dl\yt-dlp.exe' sys.base_prefix = '' sys.base_exec_prefix = '' sys.executable = 'C:\widevine-dl\yt-dlp.exe' sys.prefix = '' sys.exec_prefix = '' sys.path = [ 'C:\widevine-dl\base_library.zip', 'C:\widevine-dl\lib-dynload', 'C:\widevine-dl', ] Fatal Python error: init_fs_encoding: failed to get the Python codec of the filesystem encoding Python runtime state: core initialized ModuleNotFoundError: No module named 'encodings'

    Current thread 0x000026c0 (most recent call first):

    Any ideas?

    opened by Khopon 0
  • no video

    no video

    Hello, i tried to download using this mode everything success fully downloaded but there is no video in mp4 and audio can you please check and let me know where did i go wrong Screenshot-2

    opened by snowywish 1
  • I can't figure out how to get the proper keys anymore since the chrome extension no longer works for me

    I can't figure out how to get the proper keys anymore since the chrome extension no longer works for me

    master_2.txt from the mpd file I thought the KID was 44d7aa5d9631940220b6687933b5ce96 and I used AES-FINDER on the firefox tab to get the key not sure how I could have screwed that up otherwise

    opened by num421337 1
  • You're my Hero! Fuck AnyStream, Fuck FlixGrab, Fuck AnyPaidSHIT

    You're my Hero! Fuck AnyStream, Fuck FlixGrab, Fuck AnyPaidSHIT

    <3 <3 <3

    ❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️❤️

    opened by d3417 5
Releases(1.1.1)
Owner
Vank0n (SJJeon)
Mostly Developing Automation Scripts & DRM Related Tools 🇰🇷
Vank0n (SJJeon)
Monitor robot of Apple Store's products, using DingTalk notification.

概述 本项目应用主要用来监测Apple Store线下直营店货源情况,主要使用Python实现。 首先感谢iPhone-Pickup-Monitor项目带来的灵感,同时有些实现也直接使用了该项目的一些代码。 本项目在iPhone-Pickup-Monitor原有功能的基础上去掉了声音通知,但添加了多

Lennon Chin 159 Dec 09, 2022
python based bot Sends notification to your telegram whenever a new video is released on a youtube channel!

YTnotifier python based bot Sends notification to your telegram whenever a new video is released on a youtube channel! REQUIREMENTS telethon python-de

Mohamed Rizad 6 Jul 23, 2022
A simple but useful Discord Selfbot with essential features, made with discord.py-self.

Discord Selfbot Xyno Discord Selfbot Xyno is a simple but useful selfbot for Discord. It has currently limited useful features but it will be updated

Amit Pathak 7 Apr 24, 2022
A Python library for the Docker Engine API

Docker SDK for Python A Python library for the Docker Engine API. It lets you do anything the docker command does, but from within Python apps – run c

Docker 6.1k Jan 03, 2023
this repo store a Awoesome telegram bot for protect from your large group from bot attack.

this repo store a Awoesome telegram bot for protect from your large group from bot attack.

Mehran Alam Beigi 2 Jul 22, 2022
Asynchronous Python Wrapper for the GoFile API

Asynchronous Python Wrapper for the GoFile API

Gautam Kumar 22 Aug 04, 2022
An information scroller Twitter trends, news, weather for raspberry pi and Pimoroni Unicorn Hat Mini and Scroll Phat HD.

uticker An information scroller Twitter trends, news, weather for raspberry pi and Pimoroni Unicorn Hat Mini and Scroll Phat HD. Features include: Twi

Tansu Şenyurt 1 Nov 28, 2021
Detects members having unicode names. Public bot: @scarletwitchprobot

✨ Scarletwitch bot ✨ Detects unicode names members in a tg chat & provides a option to take action on that user ! Public bot: @scarletwitchprobot Supp

ÁÑÑÍHÌLÅTØR SPÄRK 18 Nov 12, 2022
A Discord Rich Presence App to set your own custom rich presence.

discord-rich-presence A Discord Rich Presence App to set your own custom rich presence. #BUILDS Ready to use package are available inside "finalpackag

1 Nov 22, 2021
Wrapper for Between - 비트윈을 위한 파이썬 라이브러리

PyBetween Wrapper for Between - 비트윈을 위한 파이썬 라이브러리 Legal Disclaimer 오직 교육적 목적으로만 사용할수 있으며, 비트윈은 VCNC의 자산입니다. 악의적 공격에 이용할시 처벌 받을수 있습니다. 사용에 따른 책임은 사용자가

1 Mar 15, 2022
A file-based quote bot written in Python

Let's Write a Python Quote Bot! This repository will get you started with building a quote bot in Python. It's meant to be used along with the Learnin

1 Nov 01, 2021
A Discord bot to combat phishing links for Steam trades and Discord gifts.

delink-bot A Discord bot to combat phishing links for Steam trades and Discord gifts. Requirement python3 -m pip install -U discord.py python3 -m pip

hugonun 15 Dec 09, 2022
😈 Discord RAGE is a Python tool that allows you to automatically spam messages in Discord

😈 Discord RAGE Python tool that allows you to automatically spam messages in Discord 🏹 Setup Make sure you have Python installed and PIP is added to

Alphalius 4 Jun 12, 2022
News API consisting various sources from Tanzania

Tanzania News API News API consisting various sources from Tanzania. Fork the project Clone the project git clone https://github.com/username/news-a

Innocent Zenda 6 Oct 06, 2022
Esse script procura qualquer, dados que você queira na wikipedia! Em breve traremos um com dados em toda a internet.

Buscador de dados simples Dependências necessárias Para você poder começar a utilizar esta ferramenta, você vai precisar da dependência "wikipedia", p

Erick Campoy 4 Feb 24, 2022
Python API wrapper library for Convex Value API

convex-value-python Python API wrapper library for Convex Value API. Further Links: Convex Value homepage @ConvexValue on Twitter JB on Twitter Authen

Aaron DeVera 2 May 11, 2022
Sentiment Analysis web app using Streamlit - American Airlines Tweets

Analyse des sentiments à partir des Tweets L'application est développée par Streamlit L'analyse sentimentale est effectuée sur l'ensemble de données d

Abida Hassan 2 Feb 04, 2022
Lamblayer: a minimal deployment tool for AWS Lambda layers

lamblayer lamblayer is a minimal deployment tool for AWS Lambda layers. lamblayer does, Create a Layers of built pip-installable python packages. Crea

Yusuke Takahashi 2 Aug 19, 2022
✨ Music&Video Userbot

🎶 Fizi - UserBot 🎶 🤖 Telegram UserBot Untuk Memutar Lagu Dan Video Di Obrolan Suara Telegram. ✨ Didukung Oleh PyTgCalls Pyrogram 📝 Persyaratan Pyt

F I Z I • Ɱeƙípres 4 Mar 29, 2022
An API wrapper for Discord written in Python.

discord.py A modern, easy to use, feature-rich, and async ready API wrapper for Discord written in Python. Key Features Modern Pythonic API using asyn

Danny 12k Jan 08, 2023