Skip to content

Fix empty video metadata in channel uploads (lockupViewModel)#383

Open
sstadtl wants to merge 1 commit into
Hexer10:masterfrom
sstadtl:fix/channel-uploads-lockup-view-model
Open

Fix empty video metadata in channel uploads (lockupViewModel)#383
sstadtl wants to merge 1 commit into
Hexer10:masterfrom
sstadtl:fix/channel-uploads-lockup-view-model

Conversation

@sstadtl

@sstadtl sstadtl commented Jul 2, 2026

Copy link
Copy Markdown

Caution

this PR is inspired by
#380
I let Claude analyze it and apply similar fixes to the channel uploads

YouTube now renders channel upload items with the newer lockupViewModel structure: metadata moved under metadata/lockupMetadataViewModel and the thumbnail/duration under contentImage/thumbnailViewModel. Only the video id was still parsed, leaving title, duration, view count and upload date empty.

  • Prefer the new lockup paths in ChannelUploadPage, keeping the previous ones as fallback (same approach as Fix playlist videos extraction #380 for playlists).
  • Parse view counts with units ("250K views") via parseIntWithUnits().
  • Support compact relative dates ("16h ago", "1mo ago") in toDateTime().
  • Support continuationItemViewModel continuations as fallback.

YouTube now renders channel upload items with the newer lockupViewModel
structure: metadata moved under metadata/lockupMetadataViewModel and the
thumbnail/duration under contentImage/thumbnailViewModel. Only the video id
was still parsed, leaving title, duration, view count and upload date empty.

- Prefer the new lockup paths in ChannelUploadPage, keeping the previous
  ones as fallback (same approach as Hexer10#380 for playlists).
- Parse view counts with units ("250K views") via parseIntWithUnits().
- Support compact relative dates ("16h ago", "1mo ago") in toDateTime().
- Support continuationItemViewModel continuations as fallback.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
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.

2 participants