Skip to content

Commit 4d7df14

Browse files
committed
Fix YT artist getSubscriberCount extraction
1 parent 25e4a6f commit 4d7df14

2 files changed

Lines changed: 8 additions & 5 deletions

File tree

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

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
package org.schabi.newpipe.extractor.services.youtube.extractors;
22

3+
import com.grack.nanojson.JsonArray;
34
import com.grack.nanojson.JsonObject;
45
import org.schabi.newpipe.extractor.Image;
56
import org.schabi.newpipe.extractor.channel.ChannelInfoItemExtractor;
@@ -61,10 +62,14 @@ public String getUrl() throws ParsingException {
6162

6263
@Override
6364
public long getSubscriberCount() throws ParsingException {
64-
final String subscriberCount = getTextFromObject(artistInfoItem.getArray("flexColumns")
65-
.getObject(2)
65+
final JsonArray flexColumns = artistInfoItem.getArray("flexColumns");
66+
final JsonArray runs = flexColumns
67+
.getObject(flexColumns.size() - 1)
6668
.getObject("musicResponsiveListItemFlexColumnRenderer")
67-
.getObject("text"));
69+
.getObject("text")
70+
.getArray("runs");
71+
final String subscriberCount = runs.getObject(runs.size() - 1)
72+
.getString("text");
6873
if (!isNullOrEmpty(subscriberCount)) {
6974
try {
7075
return Utils.mixedNumberWordToLong(subscriberCount);

extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/search/YoutubeMusicSearchExtractorTest.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@
44
import static java.util.Collections.singletonList;
55

66
import org.junit.jupiter.api.BeforeAll;
7-
import org.junit.jupiter.api.Disabled;
87
import org.schabi.newpipe.downloader.DownloaderTestImpl;
98
import org.schabi.newpipe.extractor.InfoItem;
109
import org.schabi.newpipe.extractor.NewPipe;
@@ -107,7 +106,6 @@ public static void setUp() throws Exception {
107106
@Override public InfoItem.InfoType expectedInfoItemType() { return InfoItem.InfoType.PLAYLIST; }
108107
}
109108

110-
@Disabled
111109
public static class MusicArtists extends DefaultSearchExtractorTest {
112110
private static SearchExtractor extractor;
113111
private static final String QUERY = "kevin";

0 commit comments

Comments
 (0)