From 60e97cd274e98841399fef67eb24cb835ce0bb1f Mon Sep 17 00:00:00 2001 From: AudricV <74829229+AudricV@users.noreply.github.com> Date: Sat, 29 Oct 2022 13:15:03 +0200 Subject: [PATCH] [YouTube] Workaround getting streaming URLs returning 403 HTTP response codes Using the player parameters used to get stories seems to fix the issue, which affects currently only certain countries such as UK. This is a workaround and should be fixed in a better way (by changing the InnerTube additional client used for videos or finding what is now required in Android player requests). --- .../services/youtube/extractors/YoutubeStreamExtractor.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java index 6e273fd98..de2b3787e 100644 --- a/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java +++ b/extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java @@ -981,6 +981,11 @@ public class YoutubeStreamExtractor extends StreamExtractor { .value(CPN, androidCpn) .value(CONTENT_CHECK_OK, true) .value(RACY_CHECK_OK, true) + // Workaround getting streaming URLs which can return 403 HTTP response + // codes by using stories parameter for Android client requests + // This behavior only happen in certain countries such as UK as of + // 10.29.2022 + .value("params", "8AEB") .done()) .getBytes(StandardCharsets.UTF_8);