Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

LesMills on Demand #24223

Closed
spoonys opened this issue Mar 3, 2020 · 7 comments
Closed

LesMills on Demand #24223

spoonys opened this issue Mar 3, 2020 · 7 comments

Comments

@spoonys
Copy link

spoonys commented Mar 3, 2020

  • [ x] I'm reporting a broken site support issue
  • [ x] I've verified that I'm running youtube-dl version 2020.03.01
  • [ x] I've checked that all provided URLs are alive and playable in a browser
  • [x ] I've checked that all URLs and arguments with special characters are properly quoted or escaped
  • [x ] I've searched the bugtracker for similar bug reports including closed ones
  • [ x] I've read bugs section in FAQ

Verbose log

[debug] System config: []
[debug] User config: []
[debug] Custom config: []
[debug] Command-line args: [u'--verbose', u'https://embed.vhx.tv/videos/403340?api=1&referrer=https%3A%2F%2Fwatch.lesmillsondemand.com&vimeo=1&auth-user-token=eyJhbGciOiJIUzI1NiJ9.eyJ1c2VyX2lkIjoxMzkwNDYyMiwiZXhwIjo
xNTgzMjMxOTQ1fQ.rjqpIycYhoy4eliFt2M6-CYzy0eSnZFfqHK7nOxOfa0', u'-o', u'THE TRIP #13.mp4']
[debug] Encodings: locale UTF-8, fs UTF-8, out UTF-8, pref UTF-8
[debug] youtube-dl version 2020.03.01
[debug] Python version 2.7.17 (CPython) - Linux-5.0.0-1031-gcp-x86_64-with-Ubuntu-18.04-bionic
[debug] exe versions: none
[debug] Proxy map: {}
[vhx:embed] 403340: Downloading webpage
[vhx:embed] 403340: Downloading JSON metadata
ERROR: Unable to download JSON metadata: HTTP Error 403: Forbidden (caused by HTTPError()); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to upd
ate. Be sure to call youtube-dl with the --verbose flag and include its complete output.
File "/usr/local/bin/youtube-dl/youtube_dl/extractor/common.py", line 627, in _request_webpage
return self._downloader.urlopen(url_or_request)
File "/usr/local/bin/youtube-dl/youtube_dl/YoutubeDL.py", line 2238, in urlopen
return self._opener.open(req, timeout=self._socket_timeout)
File "/usr/lib/python2.7/urllib2.py", line 435, in open
response = meth(req, response)
File "/usr/lib/python2.7/urllib2.py", line 548, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/lib/python2.7/urllib2.py", line 467, in error
result = self._call_chain(*args)
File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain
result = func(*args)
File "/usr/lib/python2.7/urllib2.py", line 654, in http_error_302
return self.parent.open(new, timeout=req.timeout)
File "/usr/lib/python2.7/urllib2.py", line 435, in open
response = meth(req, response)
File "/usr/lib/python2.7/urllib2.py", line 548, in http_response
'http', request, response, code, msg, hdrs)
File "/usr/lib/python2.7/urllib2.py", line 473, in error
return self._call_chain(*args)
File "/usr/lib/python2.7/urllib2.py", line 407, in _call_chain
result = func(*args)
File "/usr/lib/python2.7/urllib2.py", line 556, in http_error_default
raise HTTPError(req.get_full_url(), code, msg, hdrs, fp)

Description

I have been trying to download from Les Mills on demand, which plays videos via Vimeo. I have gained the user auth token and the video is playable via a browser link. However, I have this error when trying to use youtube-dl to capture the video.

Any help is appreciated.

@remitamine
Copy link
Collaborator

Getting this message in the browser:

Sorry, you are not authorized to watch this video.

@BlueMM75
Copy link

BlueMM75 commented Mar 8, 2020

For the record, this was definitely working on 2020-03-02, using youtube-dl 2020.01.24, but not now.
My investigation:
Correction: using 2020.01.24 on my laptop is working, but not on my PC (either that version or the latest one!)
Using the same cookies file, & using Firefox to grab the embedded iframe URL (they are short-lived, <2hr), the download with the laptop works & PC doesn't :-/
→ cookie file or youtube-dl version seems to not be a factor. So doesn't look like #23500
The embed urls are different, the PC includes referrer=https%3A%2F%2Fwatch.lesmillsondemand.com%2Fbodybalance%3Fhtml%3D1%26sort%3Dalphabetical in the embed url, where the laptop only has referrer=
I then passed the url from the laptop to the PC, and it worked fine using either 2020.01.24 or the latest 2020.03.06
→ referrer is unimportant.
Trying a whole lot of embed URL's, some worked & some didn't.
Applying the auth-user-token= URL parameter from one that did work, to one that didn't (came back with a 403), made it work!
→ a successfully working embed URL, the auth-user-token= parameter can be applied to the other embed URL's, so they now work.

Therefore, it looks like nothing youtube-dl has changed, and I can't see how it could be changed to allow for it (given I don't know how youtube-dl works internally). So it looks like for embed.vhx.tv vidoes (or at least Les Mills ones) the unique auth-user-token= parameter for each URL, sometimes comes back with a 403, sometimes not :-/

Solution: Find an embed url that is successfully working with youtube-dl, and copy the auth-user-token= parameter into all the other urls.

@jimsaye
Copy link

jimsaye commented Mar 20, 2020

For the record, this was definitely working on 2020-03-02, using youtube-dl 2020.01.24, but not now.
My investigation:
Correction: using 2020.01.24 on my laptop is working, but not on my PC (either that version or the latest one!)
Using the same cookies file, & using Firefox to grab the embedded iframe URL (they are short-lived, <2hr), the download with the laptop works & PC doesn't :-/
→ cookie file or youtube-dl version seems to not be a factor. So doesn't look like #23500
The embed urls are different, the PC includes referrer=https%3A%2F%2Fwatch.lesmillsondemand.com%2Fbodybalance%3Fhtml%3D1%26sort%3Dalphabetical in the embed url, where the laptop only has referrer=
I then passed the url from the laptop to the PC, and it worked fine using either 2020.01.24 or the latest 2020.03.06
→ referrer is unimportant.
Trying a whole lot of embed URL's, some worked & some didn't.
Applying the auth-user-token= URL parameter from one that did work, to one that didn't (came back with a 403), made it work!
→ a successfully working embed URL, the auth-user-token= parameter can be applied to the other embed URL's, so they now work.

Therefore, it looks like nothing youtube-dl has changed, and I can't see how it could be changed to allow for it (given I don't know how youtube-dl works internally). So it looks like for embed.vhx.tv vidoes (or at least Les Mills ones) the unique auth-user-token= parameter for each URL, sometimes comes back with a 403, sometimes not :-/

Solution: Find an embed url that is successfully working with youtube-dl, and copy the auth-user-token= parameter into all the other urls.

hello i'm new on youtube-dl can you explain me how to dowload from the mills on demand ?i have a account on the mills
thank's

@KeyboardDabbler
Copy link

For the record, this was definitely working on 2020-03-02, using youtube-dl 2020.01.24, but not now.
My investigation:
Correction: using 2020.01.24 on my laptop is working, but not on my PC (either that version or the latest one!)
Using the same cookies file, & using Firefox to grab the embedded iframe URL (they are short-lived, <2hr), the download with the laptop works & PC doesn't :-/
→ cookie file or youtube-dl version seems to not be a factor. So doesn't look like #23500
The embed urls are different, the PC includes referrer=https%3A%2F%2Fwatch.lesmillsondemand.com%2Fbodybalance%3Fhtml%3D1%26sort%3Dalphabetical in the embed url, where the laptop only has referrer=
I then passed the url from the laptop to the PC, and it worked fine using either 2020.01.24 or the latest 2020.03.06
→ referrer is unimportant.
Trying a whole lot of embed URL's, some worked & some didn't.
Applying the auth-user-token= URL parameter from one that did work, to one that didn't (came back with a 403), made it work!
→ a successfully working embed URL, the auth-user-token= parameter can be applied to the other embed URL's, so they now work.

Therefore, it looks like nothing youtube-dl has changed, and I can't see how it could be changed to allow for it (given I don't know how youtube-dl works internally). So it looks like for embed.vhx.tv vidoes (or at least Les Mills ones) the unique auth-user-token= parameter for each URL, sometimes comes back with a 403, sometimes not :-/

Solution: Find an embed url that is successfully working with youtube-dl, and copy the auth-user-token= parameter into all the other urls.

I am not sure if your method works any more, i have tried many urls and have not found a working one yet.

youtube-dl https://embed.vhx.tv/videos/797972?api=1&auth-user-token=eyJhbGciOiJIUzI1NiJ8.eyJ1c2VyX2lkIjoxNDc3ODM4OCwiZXhwIjoxNTg3ODcxNTU4fQ.0EnM10fD3jZCEatoLWh-aIPPbeBG8pd0vTFWn0hHG6U
[vhx:embed] 797972: Downloading webpage
ERROR: Unable to extract ott data; please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type youtube-dl -U to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.
'auth-user-token' is not recognized as an internal or external command,
operable program or batch file.

@Margalida-MB
Copy link

Hi!
How did you get the auth-user-token= parameter from a working URL?
I've tried using Firefox to grab the embedded iframe URL as BlueMM75 says, but I can't seem to find it... I've found the u0026token= and TOKEN= parameters but they don't follow the same string pattern than yours, and adding them to a different URL doesn't make the video playable via a browser link.

Many thanks in advance! 😄

@KeyboardDabbler
Copy link

KeyboardDabbler commented Apr 30, 2020

Hi!
How did you get the auth-user-token= parameter from a working URL?
I've tried using Firefox to grab the embedded iframe URL as BlueMM75 says, but I can't seem to find it... I've found the u0026token= and TOKEN= parameters but they don't follow the same string pattern than yours, and adding them to a different URL doesn't make the video playable via a browser link.

Many thanks in advance! 😄

You need to login to a account with membership access. I clicked on one of the videos until it played, click "View page source" instead of view "iframe source" and then you can find the <iframe> tag in the <section> tag with the id="watch-player". You will find the full src there with auth-user-token=

Report back if you get any further. I tested more url tonight with no joy.

just a FYI the auth-user-token= is also located in the "iframe source" after window.OTTData =

@Margalida-MB
Copy link

Margalida-MB commented May 4, 2020

Thanks a lot for your answer! 😄
I've been trying several URL and cookies combinations, and no luck either... 😢
For the moment, I've found the https://very.ninja/ website allows you to manually download videos introducing URLs with the following format: https://embed.vhx.tv/videos/XXXXXX?api=1&auth-user-token=XXXXXX
It's not ideal, but it works 🤷

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

6 participants