[YouTube] Support shows and page header on user channels#1203
Merged
Stypox merged 11 commits intoTeamNewPipe:devfrom Jul 25, 2024
Merged
Conversation
The runs object was computed twice in getTextFromObject and getUrlFromObject methods, leading to unneeded search costs. This has been avoided by storing the array in method variables.
…lHelper Also throw an exception when we cannot get the verified status of a channel in YoutubeChannelExtractor due to a missing channelHeader, if the channel has no channelAgeGateRenderer.
As there are multiple show UI elements which share a lot of common data, a base implementation, an abstract class named YoutubeBaseShowInfoItemExtractor, has been created to handle common cases.
Also fix naming of info items' collection methods.
…hannels Also move duplicate strings into constants and support pageHeader channel header in user channels on YoutubeChannelHelper methods.
This was referenced Jul 24, 2024
Stypox
requested changes
Jul 25, 2024
Member
There was a problem hiding this comment.
Code looks good to me, I reviewed all commits one by one. Thank you!
Here's a testing APK: app-debug.zip
Unfortunately channel avatars and banners still don't work, is that expected? The subscriber count now works though
Also move duplicate strings into constants and add a missing default switch case.
The channel description has been changed and some expected words have been removed.
For some reason, mocks of the continuation were not parsed. All mocks of the test have been updated to fix the issue.
f23277a to
8db7249
Compare
Member
Author
No, I forgot to add the part of paths for which I check their presence in the paths to get avatars and banners. This is fixed. |
Stypox
approved these changes
Jul 25, 2024
Member
Stypox
left a comment
There was a problem hiding this comment.
Thanks, I can confirm it works now!
app-debug.zip
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR is a continuation of my original work in #1169 and #1170.
It fixes the extraction of channel metadata on user channels in which a
pageHeaderRendereris returned, which is now the main channel header used of user channels, and adds support for shows' items (returned in searches and channels).Several related improvements and fixes in the YouTube service have been also done on the fly (see the commits for more details).
Fixes TeamNewPipe/NewPipe#5793, fixes TeamNewPipe/NewPipe#10826.