As I said in the first post:
Just search the site that you want and you'll see all the relevant information in the first post (at the use cases section). It gets updated after each version since I don't want to spread the information on many separate posts.In the eventual case that you don't know how to use a specific service, just Ctrl+F search for your site and look at the example commands.
Try StreamFab Downloader and download from Netflix, Amazon, Youtube! Or Try DVDFab and copy Blu-rays!
+ Reply to Thread
Results 61 to 90 of 91
Thread
-
--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
v1.13.0: +shahid.mbc.net
Minor changes:
=> extended the eurovisionsport.com service, you can download entire competitions that take place across multiple days--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
Hey !
HTML Code:def generate_auth(auth_params): return binascii.hexlify(hmac.new( shahid_mbc_net.SITE_INFO["SECRET_KEY"].encode('utf-8'), ";".join( f"{k}={auth_params[k]}" for k in sorted(auth_params.keys()) ).encode('utf-8'), hashlib.sha256 ).digest()).decode('utf-8')
-
No problem and thanks.
The problem that was encountered here got solved. For anyone else interested in the eurovisionsport.com service, go to its python file and search for:
eurovisionsport_com.LOGIN_URL.format
you're gonna have to replace that request call with this (don't forget about tab indent)
Code:response = json.loads(requests.post( eurovisionsport_com.LOGIN_URL.format( email=quote(credentials["EMAIL"]), password=quote(credentials["PASSWORD"]) ), json={}, headers={ 'host': 'api.evsports.opentv.com', 'tenantid': 'nagra' } ).content.decode())
from urllib.parse import parse_qs, urlparse, quote
Because the email and password are sent directly in the URL as plaintext, I forgot to url encode them properly. This fix will be added in the next version.--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
Wasn't expecting this post to become a sticky. Thank you kindly @baldrick. Guess I should at least attempt to make this tool somewhat usable for other non-windows operating systems, not just for generating download commands.
v1.14.0:
=> + 6play.fr (thanks @aqzs for testing french restricted content)
=> + rsi.ch (thanks @snake for testing swiss restricted content and thanks again @aqzs for explaining the forward header IP trick)
Minor changes:
=> fixed the login bug for eurovisionsport.com
=> + fifa.com (now /watch/ embedded URLs that redirect to plus.fifa.com are supported)--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
v2.0.0 (no new services added this update):
=> + support for linux (thanks a lot @psxman for testing on linux termux)
=> + support for macos
Minor changes:
=> fixed a bug for eurovisionsport.com due to a changed endpoint URL
=> extended the fifa.com service (now links that don't redirect to plus.fifa.com can be downloaded)
Others:
=> separated the release versions from the python script because there are multiple OS releases available now, please download only what you intend to use--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
Widefrog Install Termux
If you have followed A_N_G_E_L_A`s instructions previously for UK_FTA or Freevine on your phone
you can skip the prerequisites.
Open termux pkg install ffmpeg
login proot-distro login ubuntu
Install perquisites.
wget https://github.com/shaka-project/shaka-packager/releases/download/v3.1.0/packager-linux-arm64
cp packager-linux-arm64 /usr/local/bin/shaka-packager
wget https://github.com/nilaoda/N_m3u8DL-RE/releases/download/v0.1.5.3-beta/N_m3u8DL-RE_Bet...0230323.tar.gz
tar -zxf N_m3u8DL-RE_Beta_linux-x64_20230323.tar.gz
cd N_m3u8DL-RE_Beta_linux-x64
rm -r N_m3u8DL-RE_Beta_linux-x64
rm -r N_m3u8DL-RE_Beta_linux-x64_20230323.tar.gz
chmod +x /usr/local/bin/ N_m3u8DL-RE
mkdir tmp; cd tmp
wget https://files.videohelp.com/u/301890/bento4_tools_android.zip
unzip bento4_tools_android.zip
rm *.zip
chmod +x *
cp * /usr/local/bin/
cd out of tmp dir
cd ../; rm -r tmp
apt install mkvtoolnix
apt install python3 python3-venv python3-pip
Widefrog install.
copy widfrog directory to Download dir on phone
pwd /root
mv /sdcard/download/frog .
cd frog
python3 -m venv frog
source frog/bin/activate'
grep -v '^#' requirements.txt | xargs -n 1 pip install
chmod +x "terminal/mkvmerge.sh"
python3 widefrog.py
python3 widefrog.py –config lists config
edit config.json
cd app_files
cp config.json /sdcard/Download/config.json
copy to your laptop /desktop
change download path and remove –no log from Vod line
python3 widefrog.py input.txt
Test with input.txt
https://www.fifa.com/en/watch/7wST4MTAbpXRAAmufEpCbx
https://www.nba.com/watch/list/collection/skills-drills
https://www.nba.com/watch/video/game-recap-lakers-120-timberwolves-109
https://www.nba.com/watch/video/the-fast-break-mar-10-2
https://www.nba.com/watch/video/game-recap-wizards-110-heat-108
https://www.nba.com/game/hou-vs-ind-0022300719?watchRecap=true
https://www.nba.com/game/mil-vs-lac-0022300924?watchRecap=true
https://www.nba.com/game/ind-vs-orl-0022300928?watchRecap=true
https://www.rakuten.tv/<COUNTRY>/live_channels/lone-star
https://www.threenow.co.nz/shows/madam/season-1-ep-1/1717557415382/M86801-985 -
Thanks for the termux guide
--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
Just use the python source code which is platform independent and follow the installation instructions. I'll post a release version in the next update, but it's too slow because of pyinstaller --onefile.
Sadly I don't add sites by request. I just add them randomly from time to time.--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
v2.1.0:
=> + cbs.com (thanks a lot @psxman for testing it)
=> + veeps.com (it has free content, not all content is paid)
Minor changes:
=> added a macos release version (if it's too slow then use python)
=> updated the requirements.txt file (only relevant if you use python)Last edited by 2nHxWW6GkN1l916N3ayz8HQoi; 27th Jul 2024 at 12:16.
--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
looks like a good software but you need python software for itis there a other way to do this.
-
--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
I was notified through PM that there was a problem with the plus.rtl.de service and also been given a fix for it (thanks @lostion). The fix is editing and replacing the following in the plus.rtl.de py file:
Code:"053194cbfad5176c2093b4dcf3d9d39dc964ce500a1e36f21bfdb2e7bb77741b" with "04e2f59b9c750df1137f9946258c17686cd4447511383ef05fcf699183f449b8"
Code:"dcb62f31f4d2cba96bc81144fb1b4dc2555b389cc11396e471c75a0c2ae27bea" with "fea0311fb572b6fded60c5a1a9d652f97f55d182bc4cedbdad676354a8d2797c"
--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
-
You could be happy with other "general" downloaders, for example, @foxrefire's extension or @angela's hell noob pack. But if you're serious about making your own script for a lot of downloads, there's a guide in my signature. It teaches the basics and helps you have fewer headaches when scripting. I may assist you even at some points if you get stuck (don't confuse this with me doing your job from scratch though). Best of luck.
--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
v2.2.0:
=> + canalplus.com (thanks @brick for the pssh playready trick)
=> + tv5mondeplus.com
Minor changes:
=> plus.rtl.de:
- fixed the hash issue
- added an optional account login feature in the eventual case that there may be free videos that require an account
- added the mpd URL editing trick (thanks @aqzs and @lostion for explaining it)
=> Since canalplus.com has 720p+ blocked by L1, if you use "-sv best" in the config parameters, it's gonna be replaced automatically by the highest decryptable quality. Otherwise, I just assume you know what you're doing. This is gonna be applied from now on for all services that have quality levels blocked by L1.
Off topic: for those of you that have experience writing scripts with pywidevine, is there a way in which you can check the level L of the loaded wvd (1/2/3) ?
Congrats!--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
Other than the obvious:
Code:device = Device.load(sys.argv[1]) print(device) print(device.security_level)
-
Code:
from pywidevine.device import Device, DeviceTypes device = Device.load("wvd") # Check level device.security_level # Since both Chrome and Android are L3, and Android can be either L3 or L1, you can check for type as well if device.type == DeviceTypes.ANDROID: do_something() if device.type == DeviceTypes.CHROME: do_something()
-
Oh man. I really gotta start reading the documentation for pywidevine. Thanks a lot! Now I can crash the script entirely if someone crazy attempts mass downloading with L1. Someone who got it himself would be smart enough not to attempt. This is more for those who bought it.
Thanks! My goal is to reach somewhere around 50-100. It's a shame N_m3u8DL-RE doesn't come with page extractors like yt-dlp does since this entire downloader is basically N_m3u8DL-RE extractors.--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
v2.3.0:
=> + midnightpulp.com
Minor changes:
=> extended the fifa.com service: now you can download pages of content from a query search and also series (seasons/episodes)
=> extended the plus.rtl.de service: now you can download podcasts, livestreams and series (seasons/episodes and years/months)
=> updated the requirements.txt file (only relevant if you use python)
Off topic: @brick, @obo, I managed to add the L3 check using pywidevine like you two suggested (thanks for that again). I have one final problem with this, is there a way in which I can check if a cdm is emulated or not? I know I can simply read the content of the cdm and look for the word "Emulator" , but I have no idea how reliable is that. Didn't manage to find something relevant in their github.--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
That's a good question. I don't think pywidevine has any set classes or functions for that. But one way to do it is to parse the client and check the build info of the CDM. If it's emulated, it'll have "userdebug/dev-keys" in the name, while a real one will have "user/release-keys".
Code:# google/sdk_gphone_x86_arm/generic_x86_arm:9/PSR1.180720.122/6736742:userdebug/dev-keys # samsung/beyond2lteeea/beyond2:12/SP1A.210812.016/G975FXXSGHWC1:user/release-keys
Code:from pywidevine.device import Device device = Device.load("device.wvd") build = next(x.value for x in device.client_id.client_info if "build_info" in x.name) if "userdebug" in build: do_something()
-
I can add another type of build_info values:
Code:google/walley/walleye:10/QP1A.191105.004/eng.cmj.20220621.194942:userdebug/test-keys Xiaomi/ginkgo/ginkgo:13/TQ1A.230105.002/0859:userdebug/release-keys
Last edited by Obo; 18th Aug 2024 at 03:01.
-
So, it's not completely 100% reliable. That's what I was afraid of. At least, is it safe to assume the following
ALL emulated cdms will contain "userdebug" but not all cdms that contain "userdebug" are emulated
?--[----->+<]>.++++++++++++.---.--------.
[*drm mass downloader: widefrog*]~~~[*how to make your own mass downloader: guide*] -
Yeah, pretty much. Another way to look at it might be "production build" vs. "developer build". If it's got "userdebug" it's most likely a developer build, whether it's from a real device or not. But no, it's probably not 100% reliable.
I have the same Xiaomi one and can confirm it's not accepted as a real device. If you want to test your other one, see if you can get the HD key from youtube. -
Code:
google/sdk_gphone_x86_arm/generic_x86_arm:9/PSR1.180720.122/6736742:userdebug/dev-keys HAS USERDEBUG: True google/sdk_gphone64_x86_64/emu64xa:14/UE1A.230829.036.A2/11596452:user/release-keys HAS USERDEBUG: False samsung/a13venseea/a13ve:14/UP1A.231005.007/A137FXXU5EXE3:user/release-keys HAS USERDEBUG: False samsung/a13venseea/a13ve:14/UP1A.231005.007/A137FXXU5EXE3:user/release-keys HAS USERDEBUG: False samsung/a14mnseea/a14m:14/UP1A.231005.007/A145RXXS6CXF1:user/release-keys HAS USERDEBUG: False samsung/a14mnseea/a14m:14/UP1A.231005.007/A145RXXS6CXF1:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU3CVG2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU5CWF2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU3CVG2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU5CWF2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU5CWF2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU3CVG2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU3CVG2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU3CVG2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU5CWF2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU5CWF2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU5CWF2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU5CWF2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU5CWF2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU5CWF2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU5CWF2:user/release-keys HAS USERDEBUG: False samsung/a20eeea/a20e:11/RP1A.200720.012/A202FXXU5CWF2:user/release-keys HAS USERDEBUG: False samsung/xcover4seea/xcover4s:11/RP1A.200720.012/G398FNXXUGCVE6:user/release-keys HAS USERDEBUG: False
Hi Brick that's not completely true as you can see I have 2 emulated and the rest are real cdms.
I'm looking at a way to see if you can find a way for definite if its emulated or not the second one is android 14 sdk 34 gey got with ghydra added xml
Similar Threads
-
Batch IMDB Image Downloader
By Jay123210599 in forum ComputerReplies: 3Last Post: 11th Jan 2024, 12:02 -
Help downloading DRM protected content
By edenshapira in forum Video Streaming DownloadingReplies: 0Last Post: 28th Oct 2023, 14:59 -
Downloading DRM protected content from mewatch.sg
By notred in forum Video Streaming DownloadingReplies: 4Last Post: 25th Nov 2022, 04:34 -
Weird Behaviour Of DRM Protected Content
By portalie in forum Video Streaming DownloadingReplies: 1Last Post: 6th Feb 2022, 15:10