Skip to content

Commit 29d6112

Browse files
Fix subscriber count extraction
1 parent ca349e4 commit 29d6112

1 file changed

Lines changed: 17 additions & 11 deletions

File tree

extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/extractors/YoutubeStreamExtractor.java

Lines changed: 17 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -542,20 +542,26 @@ public List<Image> getUploaderAvatars() throws ParsingException {
542542

543543
@Override
544544
public long getUploaderSubscriberCount() throws ParsingException {
545-
final var videoOwnerRenderer = JsonUtils.getObject(getVideoSecondaryInfoRenderer(),
545+
final JsonObject videoOwnerRenderer = JsonUtils.getObject(getVideoSecondaryInfoRenderer(),
546546
"owner.videoOwnerRenderer");
547-
final String subscriberCountText =
548-
getTextFromObject(videoOwnerRenderer.getObject("subscriberCountText"))
549-
.or(() -> YoutubeParsingHelper.getFirstCollaborator(videoOwnerRenderer)
550-
.map(collaborator -> collaborator.getObject("content")
551-
.getString("content"))
552-
.map(content -> content.split("•")[1]))
553-
.filter(YoutubeParsingHelper.STRING_PREDICATE)
554-
.orElse(null);
547+
548+
String subscriberCountText;
549+
if (videoOwnerRenderer.has("subscriberCountText")) {
550+
subscriberCountText = getTextFromObject(videoOwnerRenderer
551+
.getObject("subscriberCountText")).orElse(null);
552+
} else {
553+
subscriberCountText = YoutubeParsingHelper
554+
.getFirstCollaborator(videoOwnerRenderer.getObject("navigationEndpoint"))
555+
.map(endpoint -> endpoint.getObject("subtitle").getString("content"))
556+
.orElse(null);
557+
}
558+
559+
if (isNullOrEmpty(subscriberCountText)) {
560+
return UNKNOWN_SUBSCRIBER_COUNT;
561+
}
555562

556563
try {
557-
return subscriberCountText != null ? Utils.mixedNumberWordToLong(subscriberCountText)
558-
: UNKNOWN_SUBSCRIBER_COUNT;
564+
return Utils.mixedNumberWordToLong(subscriberCountText);
559565
} catch (final NumberFormatException e) {
560566
throw new ParsingException("Could not get uploader subscriber count", e);
561567
}

0 commit comments

Comments
 (0)