-
Notifications
You must be signed in to change notification settings - Fork 10.1k
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
Error downloading YouTube videos with new signature length 92 #1060
Comments
Above are some sample signatures with this new length. |
Some new real signature keys with length 92: 3030A80632B4979C3BA73C76585E3DD530FBF48EF357E4970C4AD86027D0D2A20ED25FE0054D502.58558.581581 |
@speedyapocalypse @Baqan Can you post a couple of pairs of both sample and real signatures? That would be immensely helpful and allow us to resolve this issue almost immediately. Having just one (real or input) is not that helpful, unfortunately. |
@phihag I'd definitely like to provide both as obviously just providing one isn't much help. However, how would one go about doing this? When I attempt to see the URL of the streaming video through, say, the network inspector within Chrome, the videos playing have an itag of 140 and 134 and the links played are not the ones inside of the |
This video is broken also:
|
$ ./youtube-dl --verbose https://www.youtube.com/watch?v=LrUvu1mlWco |
Two 92 length sig pairs: F9F9B6E6FD47029957AB911A964CC20D95A181A5D37A2DBEFD67D403DB0E8BE4F4910053E4E8A79.0B70B.0B80B8 1212719B8F2A427D03510DCE7443E88F641398346564B1D3342F2F79CEC074BCF5DDE73C81387BC.D66D6.D65D65 Looks pretty straightforward to decrypt... |
@patrickslin how do you find those sig pairs? |
Here is working Python code to decrypt those two signature pairs. I've tested and this works in production for all Vevo videos. Python:
JavaScript Equivalent:
|
here is working JavaScript code to decrypt all signature.. i found this code in youtube html5 player... function dj(a)
|
@firmanelhakim I used @jaimeMF script here https://gist.github.com/jaimeMF/039134145e38dd9dcec6 in the browser javascript console of the interested page, in this case a Beyonce Vevo video. The network requests, along with the decrypted signature query parameter is found when you play the video. Match up the appropriate itags to get the encrypted/decrypted signature pairs. For the 92 length sig, it's pretty straightforward since the decrypt sig pattern matches the encrypted sig pretty closely. I did have to modify that script a bit since the 92 sig has two '.' instead of one. |
@speedyapocalypse Cool. Exactly what I got. :) |
@WithM posted the key to all of this though. I just integrated that JavaScript code into my application which parses using JavaScript and it works like a charm. Looks like it also works for all signature lengths. Perhaps we should consider moving over to that algorithm instead of individually having code to handle each signature length. |
@speedyapocalypse Saw that. Works for me also. |
Here's the new algorithm that I suggest we use from now on thanks to @WithM: Python
JavaScript:
And a simple Python test:
|
@Forever-Young Thank you very much! I was under the impression that YouTube changed the code with each HTML5 player it serves, but apparently, it isn't so. |
Support for length 92 has been added in youtube-dl 2013.07.17.1. Type
to update. |
http://jitender6feb.blogspot.in/2014/01/please-help-me-for-i-have-only-idm.html Please Help me for i have only idm dwnldata folder without reg(window was crashed but copy dwnldata folder by bartPe) C:\Documents and Settings\Administrator\Application Data\IDM\DwnlData\Administrator and when open any folder found .log file eg 2.log, and also found some parts like when its open found the codings i have many search on internet but not successful, so how to download the uncomplete video by signature or id or any other Method Eg.....by ScreenShot AND |
@Kajbende please don't post questions about other software in this bug tracker, we don't answer them. If you want to download a youtube video, you just need to install youtube-dl and run |
@awojnowski in which Javascript variable I can pick up the 92 signature? |
Hi,
I have problems when I try to downloads videos from YouTube since some hours ago. Apparently, there is a new signature length (92).
C:\yt-dl>youtube-dl http://www.youtube.com/watch?v=j5-yKhDd64s
[youtube] Setting language
[youtube] j5-yKhDd64s: Downloading video webpage
[youtube] j5-yKhDd64s: Downloading video info webpage
[youtube] j5-yKhDd64s: Extracting video information
[youtube] j5-yKhDd64s: Encrypted signatures detected.
ERROR: Unable to decrypt signature, key length 92 not supported; retrying might
work; please report this issue on https://yt-dl.org/bug . Be sure to call youtub
e-dl with the --verbose flag and include its complete output.
I don't know what can I do it. Any fix? Thank in advance.
The text was updated successfully, but these errors were encountered: