Skip to content

feat(youtube): support podcasts tab and recommended podcasts kiosk#58

Open
Priveetee wants to merge 3 commits intoInfinityLoop1308:mainfrom
Priveetee:main
Open

feat(youtube): support podcasts tab and recommended podcasts kiosk#58
Priveetee wants to merge 3 commits intoInfinityLoop1308:mainfrom
Priveetee:main

Conversation

@Priveetee
Copy link
Copy Markdown

@Priveetee Priveetee commented Apr 15, 2026

Refs InfinityLoop1308/PipePipe#577

Commits

Summary

  • Add YouTube channel podcasts tab extraction support (/podcasts mapping + URL normalization for query/fragment/trailing slash variants).
  • Add lockup parsing paths used by podcast payloads (lockupViewModel for podcast/video content types), including nested rich-item shapes.
  • Add Recommended Podcasts kiosk support (/podcasts, /podcasts/videos) and parse feed via browseId=FEpodcasts_destination with params qgcCCAM=.
  • Cap podcast recommendation extraction to 40 items for smoother client scrolling.

Why

  • #577 requires podcast tab support on channel pages and reliable extraction for payload variants that currently lead to empty/incomplete results.
  • Client podcast UX also needs a podcast recommendations source instead of generic related items in podcast context.

Tests

  • Added/updated focused extractor tests:
    • channel podcast tab link handler mapping
    • channel podcast tab parsing
    • lockup parsing paths for podcast payloads
    • trending link handler podcasts mapping
    • service kiosk availability
  • Build validation:
    • JAVA_HOME=/usr/lib/jvm/java-11-openjdk ./gradlew :extractor:compileJava -x checkstyleMain

Notes

  • Commits are intentionally split and each stays under 290 insertions.
  • In this fork state, full :extractor:test compile remains blocked by pre-existing unrelated test-suite issues; focused tests and integration/device validation were run for this feature.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant