-
-
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
New anti-bot blocker on Youtube prevents to get video manifests (Sign in to confirm you’re not a bot
)
#794
Comments
I don't think there's much that you can do if that's the case. Would have to sign in. |
This was kind of random before... it's extremely repeatable now. |
I am also getting "Video 'AfWnMPDM0G4' is not available." from our Azure servers, noit getting it locally. Is it possible to use proxies with Explode? |
There is a YoutubeClient constructor overload taking a HttpClient as argument, which can be configured to use a proxy. |
Thank you, should have seen that. Using proxies have solved the issue for me. |
Maybe you could try bringing your authentication cookies or anti-bot cookies |
According to youtube-dl, cookies probably won't work for long if they even work at all. ytdl-org/youtube-dl#32905 (comment) |
Is there any way to make an authenticated request to satisfy anti-bot protection? |
Somewhat useful observations:
|
99% answers can usually be found in the readme: https://github.com/Tyrrrz/YoutubeExplode#authentication |
When testing locally, it seems that instrumenting a short delay with no parallelism helped avoid the bot flagging mechanism (see #813). Also, when the client does get flagged, the issue automatically goes away after some time (not sure on the exact duration, but definitely less than an hour). On CI, however, this did not yield any useful results. It seems that the public GitHub Actions runners are pre-identified as suspicious by YouTube and the corresponding requests are pre-emptively banned. I imagine the same would apply to apps running on other public infrastructure as well. |
Thank you very much, I am using an application that calls YoutubeExplode, I'll report your answer there. |
I've switched for a personal project to YoutubeDLSharp with yt-dlp and a youtube oauth login plugin Hadn't had any issues with it yet |
original post is vague as hell, to the point of being not actionable - can someone please describe an actual test case? I might have a fix but its impossible to say give the current (lack of) information |
@3052 personally, I have a jellyfin plugin using this library. This unit tests is failing because of YouTube's anti bot measures. My guess is YouTube is blocking the IPs of GitHub runners. Edit: Same issue with yt-dlp (saw your comment there) and youtube-dl with other repos. |
I was able to reproduce the issue by running YoutubeExplode's test suite 2-3 times. It's also consistently reproducible on CI because the agent's IP/range is presumably banned: https://github.com/Tyrrrz/YoutubeExplode/actions/runs/11024028945 |
OK I will continue my work in private then, good luck |
@Tyrrrz you can consistently reproduce at home/office if you connect to almost any VPN. |
I tried |
Any idea how to fix this issue ("Please sign in") or do I need to use another library? |
FWIW: Open source https://freetubeapp.io/ plays and downloads videos without any login on the same blacklisted IP where Firefox and other download tools are required to login in order to view. |
Sign in to confirm you’re not a bot
)
@Tyrrrz i was tryng passing the cookies from the webview and still get the below error when accessing stream manifest. Response status code does not indicate success: 400 (). Reference (#861 (comment)) |
I just started getting the ("Please sign in") issue yesterday. Seeing how old this thread is without a solution I am assuming this project is now dead? |
Have you considered for a moment that a solution may simply not exist? There's nothing a library can do if YouTube chooses to enforce strict rate limits on their end. |
I said this was an old thread with no solution so yes its been considered that a solution may not exist, but after 6 months I think its more a solution does not exist. I simply asked based on that is this now a dead library, I think others are curious as well. |
That was a stupid question to ask. If you have something to contribute, make a PR or provide useful information. An open-source project is only as dead as the number of freeloaders waiting for someone else to fix their problems for them. |
I'm experiencing this issue as well. Unfortunately, in recent days, it seems that these restrictions from YouTube have become significantly stricter. I've already accumulated quite a few banned addresses. It only takes a few downloads to be blocked. I doubt a solution can be found. |
The behavior of the anti bot system is quite strange. I seemingly randomly get "Please sign in" error on |
Well I'm just glad to see people posting here today. Seems like youtube is finally catching up to third party downloaders. First they shut down multiple websites, and now this tool doesn't work. THE END IS NIGH!!!!11!1!!1! |
Ill throw my experiences in here as well. Throughout the last week, the "Please sign in" error was thrown much more often, but i could still download videos and with my "retry three times"-strategy most videos could be downloaded eventually. However today, downloading any video results in this error. I guess either YouTube misconfigured something on their servers accidentally, but more likely their bot detection is at a point where it can detect YouTube Explode consistently. |
I've also been getting this recently infamous "Please sign in" error. I've tried everything but to no avail. I've found that the error disappears when you supply the YoutubeClient with an HttpClient that uses a proxy. But instead, it just doesn't complete the async method and times out.
Running the code gives this error after the specified 10 second timeout:
I am completely bamboozled. |
@Tyrrrz Is there a data api quota involved here - https://developers.google.com/youtube/v3/docs/videos/list https://developers.google.com/youtube/v3/getting-started#quota |
Hi all, First – thank you very much for this great library. Here are my two cents and observations… My MAUI app stopped working with the infamous
message two days ago. At the same time New Pipe v0.27.4 stopped working as well. The New Pipe team released a new version yesterday. This version works fine again – in the same networks (mobile / WLAN) with probably the same IP address where my app still fails. Maybe it isn’t IP address blocking? I tried to implement authentication in my app yesterday. But the Thanks again. |
It's not IP blocking i think. When i was testing, i could sporadically get it to work on one pc but not the other, on the same network. |
So NewPipe had this issue but fixed it? The main thing I can see they added in their repo is changing client version and adding visitor data: |
FYI... The current issue should therefore also be solvable in Tyrrrz/YoutubeDownloader. I would be happy if Oleksii could get his YoutubeDownloader working again. |
Does this now work from GitHub hosted runners in ci/cd pipelines, or are we still IP blocked on that front? |
Huge thanks to @Ales315! |
Doesn't appear so #867 (https://github.com/Tyrrrz/YoutubeExplode/actions/runs/12968580523?pr=867) It did help with my local test runs though, so that's something at least |
I can confirm that I also still get the 'please sign in' exception on my server with static IP address. |
I tested YoutubeExplode 6.5.2 this evening. It looks very good, so far there are no issues. Thank you for the great work. |
Version
6.3.16
Platform
.NET 8 / Debian
Steps to reproduce
Query and download many videos for a longer time on the same system with static IP address.
Details
I am executing YoutubeExplode on a Debian server with static IP address.
Since a few days I am encountering the following exception on the GetManifestAsync method:
Seems like Youtube added a new mechanism to stop multiple videos to be queried/downloaded from the same machine/IP without logging in.
Checklist
The text was updated successfully, but these errors were encountered: