Open LifesGottaBeFun opened 2 weeks ago
I've noticed the same problem. It seems like #9534 was a precursor to this. As far as I can tell, there is no MediaID key anymore, which was what was being used to get the video files from ThePlatform. Looking through how the site works now, I can't find any reference to ThePlatform anymore (although I am a bit of a noob at this, so feel free to tell me I'm wrong). What definitely works (tried manually successfully) is:
<script id="initialStateDom">window.__INITIAL_STATE__ =
as we do now alreadyvideo
for all the info (including metadata) we need. Most importantly for the video, we need video/currentClip/media/assets/key
- that links to another block of JSONurl
key, which links to the master m3u8 file containing all the info needed. I've tried feeding that URL to yt-dlp and it works, using the generic extractor. Note that the link has a fairly short expiry date (not more than a few minutes IIRC)I've also found that the whole TS, MP4 as well as VTT files are directly accessible by analyzing the traffic and (for MP4s) messing around with the URLs pulled. In the meantime I've found that the direct link to the VTT file can be extracted from the first block of JSON, but I'm still looking to find a solid pattern as to the TS and mp4 files.
The first option is the most straight forward, but works via HLS and tends to download ~30 files per minute of video (~45 if you add subtitles), meaning ~2000 files for a 45 minute video with subtitles. The second option would be a nice addition, but somewhat more complex.
I'll try to convert the first option into code within the coming week - but if someone else gets around to it sooner feel free and go ahead.
Update: I've gotten around to implementing a rudimentary solution, I've pushed it to a branch on my dev fork. It works on my end and if someone needs a stopgap, feel free to use it until I polish it up and submit a PR.
DO NOT REMOVE OR SKIP THE ISSUE TEMPLATE
Checklist
Region
Non-Geoblocked
Provide a description that is worded well enough to be understood
I tried to download this video: https://www.cbc.ca/player/play/video/9.6420651
However, it failed and gave me the "Unable to download XML: HTTP Error 404: Not Found" error.
Provide verbose output that clearly demonstrates the problem
yt-dlp -vU <your command line>
)'verbose': True
toYoutubeDL
params instead[debug] Command-line config
) and insert it belowComplete Verbose Output