Skip to content

Commit 70ff47b

Browse files
committed
[YouTube] Get visitorData from the service to get valid responses
1 parent b8e050f commit 70ff47b

1 file changed

Lines changed: 15 additions & 2 deletions

File tree

app/src/main/java/org/schabi/newpipe/util/potoken/PoTokenProviderImpl.kt

Lines changed: 15 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ import android.util.Log
66
import org.schabi.newpipe.App
77
import org.schabi.newpipe.BuildConfig
88
import org.schabi.newpipe.extractor.NewPipe
9+
import org.schabi.newpipe.extractor.services.youtube.InnertubeClientRequestInfo
910
import org.schabi.newpipe.extractor.services.youtube.PoTokenProvider
1011
import org.schabi.newpipe.extractor.services.youtube.PoTokenResult
1112
import org.schabi.newpipe.extractor.services.youtube.YoutubeParsingHelper
@@ -49,8 +50,20 @@ object PoTokenProviderImpl : PoTokenProvider {
4950
// create a new webPoTokenGenerator
5051
webPoTokenGenerator = PoTokenWebView
5152
.newPoTokenGenerator(App.getApp()).blockingGet()
52-
webPoTokenVisitorData = YoutubeParsingHelper
53-
.randomVisitorData(NewPipe.getPreferredContentCountry())
53+
54+
val innertubeClientRequestInfo = InnertubeClientRequestInfo.ofWebClient()
55+
innertubeClientRequestInfo.clientInfo.clientVersion =
56+
YoutubeParsingHelper.getClientVersion()
57+
58+
webPoTokenVisitorData = YoutubeParsingHelper.getVisitorDataFromInnertube(
59+
innertubeClientRequestInfo,
60+
NewPipe.getPreferredLocalization(),
61+
NewPipe.getPreferredContentCountry(),
62+
YoutubeParsingHelper.getYouTubeHeaders(),
63+
YoutubeParsingHelper.YOUTUBEI_V1_URL,
64+
null,
65+
false
66+
)
5467

5568
// The streaming poToken needs to be generated exactly once before generating
5669
// any other (player) tokens.

0 commit comments

Comments
 (0)