Skip to content

[YouTube] Error when loading channel with pronouns due to subscribers count parsing #11353

@lmsalustri

Description

@lmsalustri

Checklist

  • I am able to reproduce the bug with the latest version given here: CLICK THIS LINK.
  • I made sure that there are no existing issues - open or closed - which I could contribute my information to.
  • I have read the FAQ and my problem isn't listed.
  • I have taken the time to fill in all the required details. I understand that the bug report will be dismissed otherwise.
  • This issue contains only one bug.
  • I have read and understood the contribution guidelines.

Affected version

0.27.2

Steps to reproduce the bug

  1. Pull up to load feed
  2. Affected channel doesn't load, error occurs

Expected behavior

The channel videos should load properly.

Actual behavior

"Not loaded: 1" shows up at the top, and the channel videos don't load because it can't fetch the subscriber count.

Screenshots/Screen recordings

Screenshot_20240727_145035_NewPipe.jpg

Logs

Exception

  • User Action: requested feed
  • Request:
  • Content Country: US
  • Content Language: en-US
  • App Language: en_US
  • Service: none
  • Version: 0.27.2
  • OS: Linux samsung/b0qsqw/b0q:14/UP1A.231005.007/S908USQU4EXE1:user/release-keys 14 - 34
Crash log

org.schabi.newpipe.local.feed.service.FeedLoadService$RequestException: 0:https://www.youtube.com/channel/UCOuw-jFRsAgZtyDXz8e4v3A
	at org.schabi.newpipe.local.feed.service.FeedLoadManager$DatabaseConsumer.accept$lambda$1(FeedLoadManager.kt:285)
	at org.schabi.newpipe.local.feed.service.FeedLoadManager$DatabaseConsumer.$r8$lambda$nP61ZaEPy7GNixUaWP6wyXDQaWo(FeedLoadManager.kt:0)
	at org.schabi.newpipe.local.feed.service.FeedLoadManager$DatabaseConsumer$$ExternalSyntheticLambda0.run(R8$$SyntheticClass:0)
	at androidx.room.RoomDatabase.runInTransaction(RoomDatabase.kt:585)
	at org.schabi.newpipe.local.feed.service.FeedLoadManager$DatabaseConsumer.accept(FeedLoadManager.kt:271)
	at org.schabi.newpipe.local.feed.service.FeedLoadManager$DatabaseConsumer.accept(FeedLoadManager.kt:268)
	at io.reactivex.rxjava3.internal.operators.flowable.FlowableDoOnEach$DoOnEachSubscriber.onNext(FlowableDoOnEach.java:86)
	at io.reactivex.rxjava3.internal.operators.flowable.FlowableBuffer$PublisherBufferExactSubscriber.onNext(FlowableBuffer.java:124)
	at io.reactivex.rxjava3.internal.operators.flowable.FlowableObserveOn$ObserveOnSubscriber.runAsync(FlowableObserveOn.java:403)
	at io.reactivex.rxjava3.internal.operators.flowable.FlowableObserveOn$BaseObserveOnSubscriber.run(FlowableObserveOn.java:178)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:65)
	at io.reactivex.rxjava3.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:56)
	at java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:307)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:644)
	at java.lang.Thread.run(Thread.java:1012)
Caused by: org.schabi.newpipe.extractor.utils.Parser$RegexException: Failed to find pattern "([\d]+([\.,][\d]+)?)" inside of "@BitByter"
	at org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:75)
	at org.schabi.newpipe.extractor.utils.Parser.matchGroup(Parser.java:60)
	at org.schabi.newpipe.extractor.utils.Parser.matchGroup1(Parser.java:49)
	at org.schabi.newpipe.extractor.utils.Utils.mixedNumberWordToLong(Utils.java:93)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.getSubscriberCountFromPageChannelHeader(YoutubeChannelExtractor.java:303)
	at org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeChannelExtractor.getSubscriberCount(YoutubeChannelExtractor.java:248)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:86)
	at org.schabi.newpipe.extractor.channel.ChannelInfo.getInfo(ChannelInfo.java:53)
	at org.schabi.newpipe.util.ExtractorHelper.lambda$getChannelInfo$4(ExtractorHelper.java:126)
	at org.schabi.newpipe.util.ExtractorHelper.$r8$lambda$BOLWstv98dC8pFAG_uir5gPXYwY(ExtractorHelper.java:0)
	at org.schabi.newpipe.util.ExtractorHelper$$ExternalSyntheticLambda13.call(R8$$SyntheticClass:0)
	at io.reactivex.rxjava3.internal.operators.single.SingleFromCallable.subscribeActual(SingleFromCallable.java:43)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4855)
	at io.reactivex.rxjava3.internal.operators.single.SingleDoOnSuccess.subscribeActual(SingleDoOnSuccess.java:35)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4855)
	at io.reactivex.rxjava3.internal.operators.single.SingleOnErrorReturn.subscribeActual(SingleOnErrorReturn.java:38)
	at io.reactivex.rxjava3.core.Single.subscribe(Single.java:4855)
	at io.reactivex.rxjava3.core.Single.blockingGet(Single.java:3644)
	at org.schabi.newpipe.local.feed.service.FeedLoadManager.loadStreams(FeedLoadManager.kt:179)
	at org.schabi.newpipe.local.feed.service.FeedLoadManager.access$loadStreams(FeedLoadManager.kt:33)
	at org.schabi.newpipe.local.feed.service.FeedLoadManager$startLoading$7.apply(FeedLoadManager.kt:113)
	at org.schabi.newpipe.local.feed.service.FeedLoadManager$startLoading$7.apply(FeedLoadManager.kt:112)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelMap$ParallelMapSubscriber.onNext(ParallelMap.java:116)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelFilter$ParallelFilterSubscriber.tryOnNext(ParallelFilter.java:132)
	at io.reactivex.rxjava3.internal.operators.parallel.ParallelRunOn$RunOnConditionalSubscriber.run(ParallelRunOn.java:399)
	... 7 more


Affected Android/Custom ROM version

Android 14 / OneUI 6.1

Affected device model

Samsung Galaxy S22 Ultra

Additional information

The affected channel has 229 subscribers at the time of writing. The subscriber count is correct when searching the channel in NewPipe. Clicking on the channel shows "Subscriber count unavailable" as in #10826, but avatar and banner load fine.

The "caused by" portion of the log is the same as #9442, but this error occurs in feed loading, not search. What I find odd is that my log doesn't show "Could not get subscriber count" like that one does.

Unsubscribing and resubscribing does not fix this. Haven't seen this error in any prior version.

Metadata

Metadata

Assignees

No one assigned

    Labels

    YouTubeService, https://www.youtube.com/bugIssue is related to a bugchannelAnything to do with creator channels in the appfeedIssue is related to the feedrequires extractor changeThis issue requires a change to the extractor

    Type

    No type

    Projects

    Status

    Done

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions