This is a batch script created to WEB-DL.

Overview

widevine-L3-WEB-DL-Script

This is a batch script created to WEB-DL.

Works well with .mpd files , for m3u8 please use n_m3u8 program (not included in this batch script).

** This is not the best way to do it but whatever. **

Note : You need Old Version of Chrome v87 or below.

Link for Widevine L3 Decrypter : https://anonfiles.com/x7I0p8m5p4/widevine-l3-decryptor-main_zip
You will need yt-dlp.exe , mp4decrypt.exe , mkvmerge.exe in the directory.

For keys , Download it like this :

image

Make sure your file is in this format :

image1

If not remove the lines which are not in the format above.

Thanks to u/Own_Western8448 for the original batch script.

Join my discord server for any questions : https://discord.gg/bHMvnWQuge

Comments
  • amz/peacock

    amz/peacock

    after changing the lines of code to suit the website im trying to grab from i get some errors

    ERROR: aria2c exited with code 22 WARNING: --downloader-args given without specifying name. The arguments will be given to all external downloaders [generic] aeeb5080-afa8-4260-9223-fe8616d8b885_corrected: Requesting header WARNING: [generic] Falling back on generic information extractor. [generic] aeeb5080-afa8-4260-9223-fe8616d8b885_corrected: Downloading webpage [generic] aeeb5080-afa8-4260-9223-fe8616d8b885_corrected: Extracting information [info] aeeb5080-afa8-4260-9223-fe8616d8b885_corrected: Downloading 1 format(s): video=2400000-10 [download] Destination: encrypted.mp4

    08/02 13:39:08 [ERROR] CUID#7 - Download aborted. URI=https://s3-iad-2.cf.dash.row.aiv-cdn.net/dm/2$It_EtQAh4NXqbiFA9DC6xo8Syc4~/1@593bac3294aa0ee458b5359231f60d7b/2d15/87b3/2647/4dbd-a801-d72f23afb743/2d15/87b3/2647/4dbd-a801-d72f23afb743/aeeb5080-afa8-4260-9223-fe8616d8b885_video_9.mp4 Exception: [AbstractCommand.cc:351] errorCode=22 URI=https://s3-iad-2.cf.dash.row.aiv-cdn.net/dm/2$It_EtQAh4NXqbiFA9DC6xo8Syc4~/1@593bac3294aa0ee458b5359231f60d7b/2d15/87b3/2647/4dbd-a801-d72f23afb743/2d15/87b3/2647/4dbd-a801-d72f23afb743/aeeb5080-afa8-4260-9223-fe8616d8b885_video_9.mp4 -> [HttpSkipResponseCommand.cc:240] errorCode=22 The response status is not successful. status=403

    aria2 will resume download if the transfer is restarted. If there are any errors, then see the log file. See '-l' option in help/man page for details.

    ERROR: aria2c exited with code 22

    this happens with both amz and peackock

    opened by techno-arch 7
  • Where is the mistake ?

    Where is the mistake ?

    @Essam3152 Help, buddy, where's the problem again? Thank you

    • [ ] [ { "mpd_url": "https://redirector.redefine.pl/vm2dash/7041a70352dd0c7177e72fd2d535fb46ea0206cf/manifest.mpd" }, { "kid": "28258b9ff8f4c00b3c6400000055df08", "hex_key": "edc194782a9ababd804900ed9d6a9aec" } ]

    image

    opened by Amb33r 6
  • manifest.mpd with multiple periods only download last period

    manifest.mpd with multiple periods only download last period

    Working fine but with 1 issue:

    Is there a way to make sure it grabs all periods from the manifest.mpd, it only seems to grab the last period. There is allready the same question but no solution given. Can somebody help me to configure webdl.py or keys.json or manifest.mpd?

    Thanks in advance.

    opened by Byter432 6
  • Exception: [AbstractCommand.cc:351] errorCode=22

    Exception: [AbstractCommand.cc:351] errorCode=22

    CUID#7 - Download aborted. URI=https://a129avoddashs3ww-a.akamaihd.net/d/2$d64r_SMqqDbYg34zwYEUrbx6y5g~/1@43cf6c9b085364d3f2b5bf4a87198688/ondemand/ww_bom/a1ec/073e/ca24/40a4-b323-65da5c42fad3/ww_bom/a1ec/073e/ca24/40a4-b323-65da5c42fad3/46c4562a-78fa-4d8a-932f-78d96884dfec_audio_11.mp4 Exception: [AbstractCommand.cc:351] errorCode=22 URI=https://a129avoddashs3ww-a.akamaihd.net/d/2$d64r_SMqqDbYg34zwYEUrbx6y5g~/1@43cf6c9b085364d3f2b5bf4a87198688/ondemand/ww_bom/a1ec/073e/ca24/40a4-b323-65da5c42fad3/ww_bom/a1ec/073e/ca24/40a4-b323-65da5c42fad3/46c4562a-78fa-4d8a-932f-78d96884dfec_audio_11.mp4 -> [HttpSkipResponseCommand.cc:240] errorCode=22 The response status is not successful. status=403

    How to overcome this error?

    opened by Sentivet 6
  • It works but got Traceback when Enter Response

    It works but got Traceback when Enter Response "1"

    Do you want to delete the Encrypted Files : Press 1 for yes , 2 for no Enter Response : 1 Traceback (most recent call last): File "PATH\webdl.py", line 105, in os.remove("en.xml") FileNotFoundError: [WinError 2] The system cannot find the file specified: 'en.xml'

    en.xml? what is that?

    opened by vikkstar12 6
  • Ripping from DisneyNow?

    Ripping from DisneyNow?

    Hey. I tried to rip from DisneyNow but it only rips the end credits of a 22 minute episode and even the resolution of that ends up being 640x360.

    Is there anything I can do to fix this so I can rip the whole episode? Not sure if it's not generating the right mpd/key for the .json file or what exactly.

    If I try ripping episodes without breaking widevine with just regular ytdl it can only go up to 720p since the 1080p link is the hidden one I need.

    opened by islesandglaciers 5
  • I'm getting response status not successful download aborted error code 22 403 forbidden for this link

    I'm getting response status not successful download aborted error code 22 403 forbidden for this link

    I'm getting response status not successful download aborted error code 22 403 forbidden for this link

    IMG_20211001_133404_860__01.jpg

    Error for the below mpd link (it will expire ๐Ÿ˜๐Ÿ˜ . Comment if you want fresh one when you need to test)

    https://nammaflix-streams.streamready.in/NAMMAFLIX/FEATUREFILM/6135c2da4bdb2711dbc3b40a/dash/manifest.mpd?Policy=eyJTdGF0ZW1lbnQiOiBbeyJSZXNvdXJjZSI6Imh0dHBzOi8vbmFtbWFmbGl4LXN0cmVhbXMuc3RyZWFtcmVhZHkuaW4vTkFNTUFGTElYL0ZFQVRVUkVGSUxNLzYxMzVjMmRhNGJkYjI3MTFkYmMzYjQwYS9kYXNoLyoiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE2MzMwODI4MTh9fX1dfQ__&Key-Pair-Id=APKAIWHAQM7JDJRYIKDA&Signature=AZLQaT5fnw8aLWV8swdLvMd2lpOzDtq6FRvbzyS8wIJxYAbz05KdxV2b~BRGt0oATDEDOS7YwjKMfPflKlAn0eodE2WWjc-X48iFSpEhzhZIG2yJeOATvykeniK-PbhPifVebZJWi9GThMdrMoXHX2a-0svAPsMNRM~ynL7VUho54JccVPO1ePrmjmJaXT2cZHP2zS4r5U-coOND7rEEi~CIN8gxsAMtFvuMwd~xwv7FEIwwGXHE7iKYY8cwZmAuw58ZQPxipFxoKoz9W65nwDPVmgqQIRqSao-a310YLoTUmQAbwqODkVFc-KU9xzhzU48A3d7h0-~i0ttbBi8JZQ__&spid=NAMMAFLIX-XSTREAM&request-id=D3DC6490B2BC46B689E4A33FD60573ED&uid=0cvABY9UGpXoKeM3i0

    Kid:key 059f32b7cc2c49f5a6e9c1bc92f9daeb:be3c09c3fcffcad02ec22aab296457f1

    Kindly please help me Thank you ๐Ÿ˜Š

    This mpd link is from https://www.airtelxstream.in/movies/jiilka/NAMMAFLIX_MOVIE_6135c2da4bdb2711dbc3b40a

    opened by ank003 5
  • Decrypt .mp4 file downloaded using n_m3u8

    Decrypt .mp4 file downloaded using n_m3u8

    I tested this script with .mpd files and it works great, but the videos I want are only available in .m3u8 so I used the n_m3u8 program like mentioned in the README. It downloaded an .mp4 file but it's still encrypted and won't play. Using the Widevine Guesser extension found keys on the website (of the m3u8 file). I was wondering if it's possible to decrypt the .mp4 file I have using this script with those keys? Thank you!

    opened by oknchm 5
  • script doesn't pick best audio

    script doesn't pick best audio

    Hi anyone know how to fix this ? this script always download low bitrate audio not "ba"

    audio_eng_1=224000 m4a audio only | 224k dash | ec-3 224k 48000Hz [en], DASH audio, m4a_dash audio_eng_2=384000 m4a audio only | 384k dash | ac-3 384k 48000Hz [en], DASH audio, m4a_dash audio_eng=96000 m4a audio only | 96k dash | mp4a.40.2 96k 48000Hz [en], DASH audio, m4a_dash

    script alwys pick this one audio_eng=96000 instead of audio_eng_2=384000

    site viaplay

    opened by NiKoCZ89 4
  • Hello, I want to ask a question. Can I download this?

    Hello, I want to ask a question. Can I download this?

    Hi, I would like to ask whether video OTT like this can download it through your widevine-L3-WEB-DL-Script? I tried to download MPD but it didn't work.

    https://video.friday.tw/drama/detail/1503

    opened by huliad2022 3
  • Decryption fails using method-2 script

    Decryption fails using method-2 script

    Hi,

    I tested the script with a primevideo vid and the full process is OK without any error.

    But the MKV file is unreadable using VLC, and mediainfo displays format and codec identifier as V_QUICKTIME. I checked encrypted file and format is AVC. Decrypted video file is AVC but unreadable too, guess that decryption failed.

    Why has this format change with mkvmerge ? I cannot find any setting to modify in the script that would affect this behavior.

    quicktime Any idea ? Thanks,

    opened by manzing 3
  • KeyError: 'kid'

    KeyError: 'kid'

    I'm new to coding so this may be a simple issue to resolve... This is the error message I am getting:

    `Traceback (most recent call last): File "C:\Users\kevin\Documents\widevine-L3-WEB-DL-Script-main\widevine-L3-WEB-DL-Script-main\webdl.py", line 35, in keys += f"--key {config[i]['kid']}:{config[i]['hex_key']} " KeyError: 'kid'

    During handling of the above exception, another exception occurred:

    Traceback (most recent call last): File "C:\Users\kevin\Documents\widevine-L3-WEB-DL-Script-main\widevine-L3-WEB-DL-Script-main\webdl.py", line 39, in keys += f"--key {config[i]['kid']}:{config[i]['hex_key']} " KeyError: 'kid'`

    I am using a keys.json file obtained in Chrome 94 from Hulu. There are two mpds, I tried swapping them but the same issue occurred. Is this something on my end or something Hulu has changed to break the keys.json file?

    opened by chrisgarland21 6
  • Bypass Ad on MPD?

    Bypass Ad on MPD?

    For some reason HBO Max seems to put a pre-roll ad on some shows like this one.

    "https://manifests.v2.api.hbo.com/dash.mpd?f.audioLanguage=en-US&f.audioLanguage=es-419&f.audioLanguage=pt-BR&f.textLanguage=en-US&f.textLanguage=es-419&f.textLanguage=pt-BR&r.duration=16.016001&r.duration=1395.435669&r.host=https%3A%2F%2Fcmaf.akm.us.hbomaxcdn.com&r.keymod=1&r.main=1&r.manifest=videos%2FGYXhBiAXE2J3DeQEAAAKJ%2F0%2F36d04f%2F0_INcDtQ_1080hi.mpd&r.manifest=videos%2FGXdXigww3QZuAuwEAABQ6%2F6%2Fb556d6%2F6_single_InIEFg_1080hi.mpd&r.origin=cmaf"

    No matter what I try and specify, it tries to download only a 10MB video even though the show is to be around 900MB.

    It downloads the correct audio tough.

    Other shows work perfectly except these ones which oddly advertise some other show before they play.

    opened by RedPenguin2 2
  • found no keys

    found no keys

    wasm streaming compile failed: CompileError: WebAssembly.instantiateStreaming(): Wasm code generation disallowed by embedder falling back to ArrayBuffer instantiation failed to asynchronously prepare wasm: CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder Uncaught (in promise) RuntimeError: abort(CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder). Build with -s ASSERTIONS=1 for more info. wasm streaming compile failed: CompileError: WebAssembly.instantiateStreaming(): Wasm code generation disallowed by embedder falling back to ArrayBuffer instantiation failed to asynchronously prepare wasm: CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder Uncaught (in promise) RuntimeError: abort(CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder). Build with -s ASSERTIONS=1 for more info. wasm streaming compile failed: CompileError: WebAssembly.instantiateStreaming(): Wasm code generation disallowed by embedder falling back to ArrayBuffer instantiation failed to asynchronously prepare wasm: CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder Uncaught (in promise) RuntimeError: abort(CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder). Build with -s ASSERTIONS=1 for more info. wasm streaming compile failed: CompileError: WebAssembly.instantiateStreaming(): Wasm code generation disallowed by embedder falling back to ArrayBuffer instantiation failed to asynchronously prepare wasm: CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder Uncaught (in promise) RuntimeError: abort(CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder). Build with -s ASSERTIONS=1 for more info. wasm streaming compile failed: CompileError: WebAssembly.instantiateStreaming(): Wasm code generation disallowed by embedder falling back to ArrayBuffer instantiation failed to asynchronously prepare wasm: CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder Uncaught (in promise) RuntimeError: abort(CompileError: WebAssembly.instantiate(): Wasm code generation disallowed by embedder). Build with -s ASSERTIONS=1 for more info. Unchecked runtime.lastError: The message port closed before a response was received.

    opened by hoooo6118 1
Owner
Paranjay Singh
Learning.
Paranjay Singh
easy_sbatch - Batch submitting Slurm jobs with script templates

easy_sbatch - Batch submitting Slurm jobs with script templates

Wei Shen 13 Oct 11, 2022
A new mini-batch framework for optimal transport in deep generative models, deep domain adaptation, approximate Bayesian computation, color transfer, and gradient flow.

BoMb-OT Python3 implementation of the papers On Transportation of Mini-batches: A Hierarchical Approach and Improving Mini-batch Optimal Transport via

Khai Ba Nguyen 18 Nov 14, 2022
creates a batch file that uses adb to auto-install apks into the Windows Subsystem for Android and registers it as the default application to open apks.

wsa-apktool creates a batch file that uses adb to auto-install apks into the Windows Subsystem for Android and registers it as the default application

Aditya Vikram 3 Apr 5, 2022
Batch Python Program Verify

Batch Python Program Verify About As a TA(teaching assistant) of Programming Class, it is very annoying to test students' homework assignments one by

Han-Wei Li 7 Dec 20, 2022
Batch generate asset browser previews

When dealing with hundreds of library files it becomes tedious to mark their contents as assets. Using python to automate the process is a perfect fit

null 54 Dec 24, 2022
Batch obfuscator based on the obfuscation method used by the trick bot launcher

Batch obfuscator based on the obfuscation method used by the trick bot launcher

SlizBinksman 2 Mar 19, 2022
A python package for batch import of resume attachments to be parsed in HrFlow.

HrFlow Importer Description A python package for batch import of resume attachments to be parsed in HrFlow. hrflow-importer is an open-source project

HrFlow.ai (ex: Riminder.net) 3 Nov 15, 2022
Flames Calculater App used to calculate flames status between two names created using python's Flask web framework.

Flames Finder Web App Flames Calculater App used to calculate flames status between two names created using python's Flask web framework. First, App g

Siva Prakash 4 Jan 2, 2022
Islam - This is a simple python script.In this script I have written all the suras of Al Quran. As a result, by using this script, you can know the number of any sura at the moment.

Introduction: If you want to know sura number of al quran by just typing the name of sura than you can use this script. Usage in termux: $ pkg install

Fazle Rabbi 1 Jan 2, 2022
Created a Python Keylogger script.

Python Script Simple Keylogger Script WHAT IS IT? Created a Python Keylogger script. HOW IT WORKS Once the script has been executed, it will automatic

AC 0 Dec 12, 2021
An awesome script to convert the University Of Oviedo web calendar to Google or Outlook calendars.

autoUniCalendar Un script en Python para convertir el calendario de la intranet de la Universidad de Oviedo en un calendario de Outlook o Google Calen

Bimo99B9 14 Sep 28, 2022
Python script to commit to your github for a perfect commit streak. This is purely for education purposes, please don't use this script to do bad stuff.

Daily-Git-Commit Commit to repo every day for the perfect commit streak Requirments pip install -r requirements.txt Setup Download this repository. Cr

JareBear 34 Dec 14, 2022
A script where you execute a script that generates a base project for your gdextension

GDExtension Project Creator this is a script (currently only for linux) where you execute a script that generates a base project for your gdextension,

Unknown 11 Nov 17, 2022
Participants of Bertelsmann Technology Scholarship created an awesome list of resources and they want to share it with the world, if you find illegal resources please report to us and we will remove.

Participants of Bertelsmann Technology Scholarship created an awesome list of resources and they want to share it with the world, if you find illegal

Wissem Marzouki 29 Nov 28, 2022
Repo created for the purpose of adding any kind of programs and projects

Programs and Project Repository A repository for adding programs and projects of any kind starting from beginners level to expert ones Contributing to

Unicorn Dev Community 3 Nov 2, 2022
Simple calculator with random number button and dark gray theme created with PyQt6

Calculator Application Simple calculator with random number button and dark gray theme created with : PyQt6 Python 3.9.7 you can download the dark gra

Flamingo 2 Mar 7, 2022
Q-Tracker is originally a High School Project created by Admins of Cirus Lab.

Q-Tracker is originally a High School Project created by Admins of Cirus Lab. It's completly coded in python along with mysql.(Tkinter For GUI)

Adithya Krishnan 2 Nov 14, 2022
Python: Wrangled and unpivoted gaming datasets. Tableau: created dashboards - Market Beacon and Playerโ€™s Shopping Guide.

Created two information products for GameStop. Using Python, wrangled and unpivoted datasets, and created Tableau dashboards.

Zinaida Dvoskina 2 Jan 29, 2022
ใ€Œ๐Ÿ“–ใ€Tool created to extract metadata from a domain

Metafind is an OSINT tool created with the aim of automating the search for metadata of a particular domain from the search engine known as Google.

null 9 Dec 28, 2022