Skip to content

Commit d6486e8

Browse files
committed
[YouTube] Remove deprecated combined trending kiosk
YouTube returns a 404 error page when requesting the kiosk page. RIP :( Some tests were replaced to test the link handlers of new kiosks. Not all are covered.
1 parent 31edd9f commit d6486e8

6 files changed

Lines changed: 26 additions & 338 deletions

File tree

extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/YoutubeService.java

Lines changed: 0 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -35,7 +35,6 @@
3535
import org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeStreamExtractor;
3636
import org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeSubscriptionExtractor;
3737
import org.schabi.newpipe.extractor.services.youtube.extractors.YoutubeSuggestionExtractor;
38-
import org.schabi.newpipe.extractor.services.youtube.extractors.kiosk.YoutubeTrendingExtractor;
3938
import org.schabi.newpipe.extractor.services.youtube.extractors.kiosk.YoutubeLiveExtractor;
4039
import org.schabi.newpipe.extractor.services.youtube.extractors.kiosk.YoutubeTrendingGamingVideosExtractor;
4140
import org.schabi.newpipe.extractor.services.youtube.extractors.kiosk.YoutubeTrendingMoviesAndShowsTrailersExtractor;
@@ -49,7 +48,6 @@
4948
import org.schabi.newpipe.extractor.services.youtube.linkHandler.YoutubeSearchQueryHandlerFactory;
5049
import org.schabi.newpipe.extractor.services.youtube.linkHandler.YoutubeStreamLinkHandlerFactory;
5150
import org.schabi.newpipe.extractor.services.youtube.linkHandler.YoutubeTrendingGamingVideosLinkHandlerFactory;
52-
import org.schabi.newpipe.extractor.services.youtube.linkHandler.YoutubeTrendingLinkHandlerFactory;
5351
import org.schabi.newpipe.extractor.services.youtube.linkHandler.YoutubeTrendingMoviesAndShowsTrailersLinkHandlerFactory;
5452
import org.schabi.newpipe.extractor.services.youtube.linkHandler.YoutubeTrendingMusicLinkHandlerFactory;
5553
import org.schabi.newpipe.extractor.services.youtube.linkHandler.YoutubeTrendingPodcastsEpisodesLinkHandlerFactory;
@@ -164,7 +162,6 @@ public SuggestionExtractor getSuggestionExtractor() {
164162
@Override
165163
public KioskList getKioskList() throws ExtractionException {
166164
final KioskList list = new KioskList(this);
167-
final ListLinkHandlerFactory trendingLHF = YoutubeTrendingLinkHandlerFactory.INSTANCE;
168165
final ListLinkHandlerFactory runningLivesLHF =
169166
YoutubeLiveLinkHandlerFactory.INSTANCE;
170167
final ListLinkHandlerFactory trendingPodcastsEpisodesLHF =
@@ -218,16 +215,6 @@ public KioskList getKioskList() throws ExtractionException {
218215
trendingMusicLHF,
219216
YoutubeTrendingMusicLinkHandlerFactory.KIOSK_ID
220217
);
221-
// Deprecated (i.e. removed from the interface of YouTube) since July 21, 2025
222-
list.addKioskEntry(
223-
(streamingService, url, id) -> new YoutubeTrendingExtractor(
224-
YoutubeService.this,
225-
trendingLHF.fromUrl(url),
226-
id
227-
),
228-
trendingLHF,
229-
YoutubeTrendingExtractor.KIOSK_ID
230-
);
231218
list.setDefaultKiosk(YoutubeLiveLinkHandlerFactory.KIOSK_ID);
232219
} catch (final Exception e) {
233220
throw new ExtractionException(e);

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

Lines changed: 0 additions & 177 deletions
This file was deleted.

extractor/src/main/java/org/schabi/newpipe/extractor/services/youtube/linkHandler/YoutubeTrendingLinkHandlerFactory.java

Lines changed: 0 additions & 67 deletions
This file was deleted.

extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/YoutubeKioskExtractorTest.java

Lines changed: 0 additions & 54 deletions
Original file line numberDiff line numberDiff line change
@@ -7,11 +7,9 @@
77
import static org.schabi.newpipe.extractor.services.DefaultTests.defaultTestRelatedItems;
88

99
import org.junit.jupiter.api.Test;
10-
import org.schabi.newpipe.extractor.exceptions.ParsingException;
1110
import org.schabi.newpipe.extractor.services.BaseListExtractorTest;
1211
import org.schabi.newpipe.extractor.services.DefaultSimpleExtractorTest;
1312
import org.schabi.newpipe.extractor.services.youtube.extractors.kiosk.YoutubeLiveExtractor;
14-
import org.schabi.newpipe.extractor.services.youtube.extractors.kiosk.YoutubeTrendingExtractor;
1513
import org.schabi.newpipe.extractor.services.youtube.extractors.kiosk.YoutubeTrendingGamingVideosExtractor;
1614
import org.schabi.newpipe.extractor.services.youtube.extractors.kiosk.YoutubeTrendingMoviesAndShowsTrailersExtractor;
1715
import org.schabi.newpipe.extractor.services.youtube.extractors.kiosk.YoutubeTrendingMusicExtractor;
@@ -294,56 +292,4 @@ public void testMoreRelatedItems() throws Exception {
294292
}
295293
}
296294

297-
// Deprecated (i.e. removed from the interface of YouTube) since July 21, 2025
298-
public static class Trending extends DefaultSimpleExtractorTest<YoutubeTrendingExtractor>
299-
implements BaseListExtractorTest, InitYoutubeTest {
300-
301-
@Override
302-
protected YoutubeTrendingExtractor createExtractor() throws Exception {
303-
return (YoutubeTrendingExtractor) YouTube.getKioskList().getExtractorById(
304-
"Trending", null);
305-
}
306-
307-
@Override
308-
@Test
309-
public void testServiceId() {
310-
assertEquals(YouTube.getServiceId(), extractor().getServiceId());
311-
}
312-
313-
@Override
314-
@Test
315-
public void testName() throws Exception {
316-
assertEquals("Trending", extractor().getName());
317-
}
318-
319-
@Override
320-
@Test
321-
public void testId() throws Exception {
322-
assertEquals("Trending", extractor().getId());
323-
}
324-
325-
@Override
326-
@Test
327-
public void testUrl() throws ParsingException {
328-
assertEquals("https://www.youtube.com/feed/trending", extractor().getUrl());
329-
}
330-
331-
@Override
332-
@Test
333-
public void testOriginalUrl() throws ParsingException {
334-
assertEquals("https://www.youtube.com/feed/trending", extractor().getOriginalUrl());
335-
}
336-
337-
@Override
338-
@Test
339-
public void testRelatedItems() throws Exception {
340-
defaultTestRelatedItems(extractor());
341-
}
342-
343-
@Override
344-
@Test
345-
public void testMoreRelatedItems() throws Exception {
346-
assertNoMoreItems(extractor());
347-
}
348-
}
349295
}

extractor/src/test/java/org/schabi/newpipe/extractor/services/youtube/YoutubeTrendingKioskInfoTest.java

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
* along with NewPipe Extractor. If not, see <http://www.gnu.org/licenses/>.
2121
*/
2222

23+
import static org.junit.jupiter.api.Assertions.assertEquals;
2324
import static org.junit.jupiter.api.Assertions.assertFalse;
2425
import static org.junit.jupiter.api.Assertions.assertTrue;
2526
import static org.schabi.newpipe.extractor.ServiceList.YouTube;
@@ -41,9 +42,9 @@ class YoutubeTrendingKioskInfoTest implements InitYoutubeTest {
4142
public void setUp() throws Exception {
4243
InitYoutubeTest.super.setUp();
4344

44-
final LinkHandlerFactory linkHandlerFactory = YouTube.getKioskList().getListLinkHandlerFactoryByType("Trending");
45+
final LinkHandlerFactory linkHandlerFactory = YouTube.getKioskList().getListLinkHandlerFactoryByType("trending_podcasts_episodes");
4546

46-
kioskInfo = KioskInfo.getInfo(YouTube, linkHandlerFactory.fromId("Trending").getUrl());
47+
kioskInfo = KioskInfo.getInfo(YouTube, linkHandlerFactory.fromId("trending_podcasts_episodes").getUrl());
4748
}
4849

4950
@Test
@@ -53,8 +54,7 @@ void getStreams() {
5354

5455
@Test
5556
void getId() {
56-
assertTrue(kioskInfo.getId().equals("Trending")
57-
|| kioskInfo.getId().equals("Trends"));
57+
assertEquals("trending_podcasts_episodes", kioskInfo.getId());
5858
}
5959

6060
@Test

0 commit comments

Comments
 (0)