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

[BUG] Error fetching video qualities: YoutubeExplodeException: Video xWYhcQv7MV0 returned 403 (stream: 18) #286

Closed
ssss500 opened this issue Sep 25, 2024 · 33 comments
Labels
bug Something isn't working help wanted Extra attention is needed

Comments

@ssss500
Copy link

ssss500 commented Sep 25, 2024

Issue Summary

I am encountering the following error on all videos across more than one application:

Error fetching video qualities: YoutubeExplodeException: Video xWYhcQv7MV0 returned 403 (stream: 18)

Any solution?

@ssss500 ssss500 added the bug Something isn't working label Sep 25, 2024
@ssss500 ssss500 changed the title [BUG] [BUG] Error fetching video qualities: YoutubeExplodeException: Video xWYhcQv7MV0 returned 403 (stream: 18) Sep 25, 2024
@rwrz
Copy link

rwrz commented Sep 25, 2024

Same here.

@JustPrem
Copy link

Similar issue here, getting the 403 error when fetching StreamManifest from url.

image

@bigzhu
Copy link
Contributor

bigzhu commented Sep 25, 2024

Same

@bigzhu
Copy link
Contributor

bigzhu commented Sep 25, 2024

It looks like YouTube has upgraded its validation mechanism for accessing the googlevideo.com stream URL.

@drexqq
Copy link

drexqq commented Sep 25, 2024

It looks like YouTube has upgraded its validation mechanism for accessing the googlevideo.com stream URL.

is there any solution ??

@MostafaSolimanMO
Copy link

Anything guys?

@bigzhu
Copy link
Contributor

bigzhu commented Sep 25, 2024

It looks like YouTube has upgraded its validation mechanism for accessing the googlevideo.com stream URL.

is there any solution ??

It has been confirmed that YouTube has indeed blocked the vulnerable interface used by youtube_explode_dart.
I spent 3 hours trying to solve this problem and finally succeeded.
After a few days of testing, I may submit a PR.

@galal3336
Copy link

@bigzhu Any quick solution????

@MostafaSolimanMO
Copy link

Would you please let us know what you did or any quick solution or even let us test your approach? @bigzhu

@bigzhu
Copy link
Contributor

bigzhu commented Sep 25, 2024

Would you please let us know what you did or any quick solution or even let us test your approach? @bigzhu

// From https://github.com/Tyrrrz/YoutubeExplode:
// The most optimal client to impersonate is the Android client, because
// it doesn't require signature deciphering (for both normal and n-parameter signatures).
// However, the regular Android client has a limitation, preventing it from downloading
// multiple streams from the same manifest (or the same stream multiple times).
// As a workaround, we're using ANDROID_TESTSUITE which appears to offer the same
// functionality, but doesn't impose the aforementioned limitation.
// https://github.com/Tyrrrz/YoutubeExplode/issues/705

The ANDROID_TESTSUITE and ANDROID clients are no longer usable; they have been blocked by YouTube.

@jonathanMNg
Copy link

jonathanMNg commented Sep 25, 2024

Would you please let us know what you did or any quick solution or even let us test your approach? @bigzhu

// From https://github.com/Tyrrrz/YoutubeExplode:
// The most optimal client to impersonate is the Android client, because
// it doesn't require signature deciphering (for both normal and n-parameter signatures).
// However, the regular Android client has a limitation, preventing it from downloading
// multiple streams from the same manifest (or the same stream multiple times).
// As a workaround, we're using ANDROID_TESTSUITE which appears to offer the same
// functionality, but doesn't impose the aforementioned limitation.
// https://github.com/Tyrrrz/YoutubeExplode/issues/705

The ANDROID_TESTSUITE and ANDROID clients are no longer usable; they have been blocked by YouTube.

Thank you!
I changed this from androidTestSuiteClient to androidClient and it works for some reason. I'm testing more to see what it may break.
image

@bigzhu
Copy link
Contributor

bigzhu commented Sep 25, 2024

Use my forked version to temporarily solve this problem:
https://github.com/bigzhu/youtube_explode_dart
I have doubts about how stable this method is.

@dhay3
Copy link

dhay3 commented Sep 25, 2024

@bigzhu THX I check the api, It works. Could I ask where do you get the new clientName and clientVersion? Is there a reference?

@mthanhha
Copy link

mthanhha commented Sep 25, 2024

Use my forked version to temporarily solve this problem: https://github.com/bigzhu/youtube_explode_dart I have doubts about how stable this method is.

It works for me well.

@bigzhu
Copy link
Contributor

bigzhu commented Sep 25, 2024

@bigzhu THX I check the api, It works. Could I ask where do you get the new clientName and clientVersion? Is there a reference?

Use this project (https://github.com/zerodytrash/YouTube-Internal-Clients/) to run the scan yourself and obtain the currently available interfaces.
This is what I've just scanned:working_clients.md

@rsozdance
Copy link

Use my forked version to temporarily solve this problem: https://github.com/bigzhu/youtube_explode_dart I have doubts about how stable this method is.

This temporary solution works fine with me.

@Hexer10
Copy link
Owner

Hexer10 commented Sep 25, 2024

I've just pushed a new version 2.2.2 which should address this issue implementing the ANDROID_CREATOR client, thanks to @bigzhu .

At the moment I'm not sure which would be the most stable client to implement, for example seems like yt-dlp is having success with a combination of IOS and WEB_CREATOR (which requires sig deciphering not currently implemented in the library).

@Hexer10 Hexer10 added the help wanted Extra attention is needed label Sep 25, 2024
@theatifwaheed
Copy link

Hello. I had the same issue.
I just updated the version to 2.2.2 and it was working fine.
@Hexer10 Please close this Issue after replying (if any).

@1041harpreet
Copy link

@Hexer10 i updated to version 2.2.2 , it works fine for some videos but this issue still present for most of the videos. could you please verify if it is working fine?

@rsozdance
Copy link

rsozdance commented Sep 25, 2024

Hello again, it works with some videos and others have the same error. anyone with any updates?

===== YOUTUBE API ERROR: YoutubeExplodeException: Video XXXXX returned 403 (stream: 18 ==========

@s-b-repo
Copy link

we can see how parabolic downloads it it works still and can download mp3 from youtube maybe we can download it as mp3 and play it as it is being downloaded

gmstyle added a commit to gmstyle/innertube_dart that referenced this issue Sep 26, 2024
@MasterRuma
Copy link

이 문제를 일시적으로 해결하려면 제가 포크한 버전을 사용하세요: https://github.com/bigzhu/youtube_explode_dart 이 방법이 얼마나 안정적인지 의심스럽습니다.

이 방법은 저에게 엄청난 도움이 되었습니다!

@ssss500 ssss500 closed this as completed Sep 27, 2024
@sondo65
Copy link

sondo65 commented Sep 27, 2024

Use my forked version to temporarily solve this problem: https://github.com/bigzhu/youtube_explode_dart I have doubts about how stable this method is.

It works for me too

@marekhanzlik
Copy link

@ssss500 Can we please reopen?
Getting 403 again as of today. Looks like they changed the mechanism again

[2024-10-08 23:01:11.760585]---------------------
YoutubeExplodeException: Video cRkaPdfjzEk returned 403 (stream: 137
#0 StreamClient.getManifest. (package:youtube_explode_dart/src/videos/streams/stream_client.dart:46)

@galal3336
Copy link

Same here

@sondo65
Copy link

sondo65 commented Oct 9, 2024

@ssss500 Can we please reopen? Getting 403 again as of today. Looks like they changed the mechanism again

[2024-10-08 23:01:11.760585]---------------------
YoutubeExplodeException: Video cRkaPdfjzEk returned 403 (stream: 137
#0 StreamClient.getManifest. (package:youtube_explode_dart/src/videos/streams/stream_client.dart:46)

same issue

@rsozdance
Copy link

Same issue from Middle East

@645h1
Copy link

645h1 commented Oct 9, 2024

@ssss500 Can we please reopen? Getting 403 again as of today. Looks like they changed the mechanism again

[2024-10-08 23:01:11.760585]---------------------
YoutubeExplodeException: Video cRkaPdfjzEk returned 403 (stream: 137
#0 StreamClient.getManifest. (package:youtube_explode_dart/src/videos/streams/stream_client.dart:46)

Same here

@hagemini
Copy link

hagemini commented Oct 9, 2024

Same issue from Middle East

upgrade to 2.2.3 working for me. Hope to help u

@mkamel44
Copy link

mkamel44 commented Oct 9, 2024

Same issue from Middle East

upgrade to 2.2.3 working for me. Hope to help u

what i have to update to get work ?

@hagemini
Copy link

Same issue from Middle East

upgrade to 2.2.3 working for me. Hope to help u

what i have to update to get work ?

youtube_explode_dart: ^2.2.3

@mkamel44
Copy link

mkamel44 commented Oct 10, 2024

i added in yaml
dependency_overrides:
youtube_explode_dart: ^2.2.3

but still
pod_player: ^0.2.2

not working
my flutter version 3.19.6
any solution?

@secret3579
Copy link

Same issue!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests