-
-
Notifications
You must be signed in to change notification settings - Fork 506
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
403 error when calling GetManifestAsync on suicide-restricted videos #795
Comments
When I perform a large number of downloads at once, there is a higher probability of occurrences exceeding a certain threshold (greater than 50). |
I can definitely see it happening on CI, but I don't have the time to investigate. Any help is welcome. |
I think these Youtube videos need age confirmation. That's why the downloads are not accessible. |
I had some time to investigate this issue, but unfortunately didn't come up with a solution. However, it seems that the deciphering process did not change and YoutubeExplode still performs that part correctly. My guess is that YouTube added a new form of verification for the |
FYI I recently found that if stream URLs have an “n=. . .” query parameter, I have to transform the values or I get 403 responses. The transform function is in the player Java Script. To find the function, look where it is called, just after the yma = function(a) {
var b = a.split("")
/* . . . */
return b.join("")
};
/* . . . */
(b = a.get("n"))
&& (b = yRa[0](b),
a.set("n", b),
yRa.length || yma(""))
/* . . . */
var yRa = [yma]; [Edit: discussion of the function from 2021: ytdl-org/youtube-dl#29326 (comment)] |
Thanks @vadmium. I remember previously the |
Another video test case: https://www.youtube.com/watch?v=vcw5THyM7Jo |
Version
6.3.16
Platform
.NET 6.0.423/Windows 11
Steps to reproduce
Details
Expected Behavior: Returns valid StreamManifest
Actual Behavior: HttpRequestException thrown
Complete error repor
Checklist
The text was updated successfully, but these errors were encountered: