From 03c61b73fcae48f0ac784b5361d473d99207ba92 Mon Sep 17 00:00:00 2001 From: JianxinLi Date: Sun, 24 Dec 2017 00:30:27 +0800 Subject: [PATCH 1/2] [youku] Fix list extraction.(close #15065) Change-Id: I578fdc5b69509bdcd8d3191e3917afe47c234ff6 --- youtube_dl/extractor/youku.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/youtube_dl/extractor/youku.py b/youtube_dl/extractor/youku.py index 9d0caee93..3e64cce38 100644 --- a/youtube_dl/extractor/youku.py +++ b/youtube_dl/extractor/youku.py @@ -276,9 +276,9 @@ class YoukuShowIE(InfoExtractor): r']+id="(reload_\d+)', first_page, 'first page reload id') # The first reload_id has the same items as first_page reload_ids = re.findall(']+data-id="([^"]+)">', first_page) + entries.extend(initial_entries) for idx, reload_id in enumerate(reload_ids): if reload_id == first_page_reload_id: - entries.extend(initial_entries) continue _, new_entries = self._extract_entries( 'http://list.youku.com/show/episode', show_id, From ab4f867752c9410292730e5d63a6eb992a7e6ae1 Mon Sep 17 00:00:00 2001 From: JianxinLi Date: Mon, 25 Dec 2017 21:39:10 +0800 Subject: [PATCH 2/2] [youku] Add test case. Some playlist has no data-id value. Change-Id: I97455f2907f08bda03b538cdc13ec827e2f8ce26 --- youtube_dl/extractor/youku.py | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/youtube_dl/extractor/youku.py b/youtube_dl/extractor/youku.py index 3e64cce38..c7947d4a1 100644 --- a/youtube_dl/extractor/youku.py +++ b/youtube_dl/extractor/youku.py @@ -241,6 +241,10 @@ class YoukuShowIE(InfoExtractor): # Ongoing playlist. The initial page is the last one 'url': 'http://list.youku.com/show/id_za7c275ecd7b411e1a19e.html', 'only_matching': True, + }, { + # No data-id value. + 'url': 'http://list.youku.com/show/id_zefbfbd61237fefbfbdef.html', + 'only_matching': True, }] def _extract_entries(self, playlist_data_url, show_id, note, query):