[Youtube] Extract featured channels from channel home (featured) page#1468
Open
ChanGu3 wants to merge 11 commits intoTeamNewPipe:devfrom
Open
[Youtube] Extract featured channels from channel home (featured) page#1468ChanGu3 wants to merge 11 commits intoTeamNewPipe:devfrom
ChanGu3 wants to merge 11 commits intoTeamNewPipe:devfrom
Conversation
|
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.



I noticed no new features on the contribution guidelines however the issue I looked at was marked as an enhancement. I'm assuming this does not count towards that and understand this may be not accepted on those terms.
Closes: #1454
This Enhancement Uses the existing
ChannelInfoItemclass to extract featured channels from the featured tab page on Youtube. ModifiedChannelTabsandYoutubeChannelTabExtractorand the other necessary files to allow the featured tab to be extracted specifically a new item know asRendererListInfoItemor for the actual inherited fileYoutubeShelfRendererListInfoItem. The featured tab (also known as home tab) on Youtube contains a list of sections which hold a list of different item types, can be arranged in multiple ways, and there can be multiple sections with the same item list so there needed to be a way to store its type and how to retrieve that list this is what is described as theRendererListInfoItem(The only supported section is the featured channels but shouldn't be to complex for additions to the other items types). The idea for theRendererListInfoItemis it stores the index of the section as aContentFilterin theListLinkHandlerwhich is used during the extraction process of a particular section which I believe most don't have a unique url so for youtube's case it uses the featured (home) channel url. Using theRenderListInfoItema new abstractChannelListExtractorandChannelListInfowas created to utilize the existingChannelInfoItemfor extraction specifically on Youtube theYoutubeFeaturedChannelListExtractor. I decided to use the continuation right away with theYoutubeFeaturedChannelListExtractorbecause it starts at the beginning of the list.The High Level Idea without the
ListInfopart to extract the featured channels from youtube,YoutubeChannelTabExtractorto get the list ofYoutubeShelfRendererListInfoItemYoutubeShelfRendererListInfoItemcreate theYoutubeFeaturedChannelListExtractorby using theListLinkHandlerfrom the sameYoutubeShelfRendererListInfoItemNew-Pipe PR Required (tested on refactor branch)
RENDERER_LISTitem to theInfoItemrequires adding a case on the switch inInfoItemBuilder.holderFromInfoType()on NewPipe