aboutsummaryrefslogtreecommitdiffstats
path: root/hypervideo_dl/extractor/funimation.py
diff options
context:
space:
mode:
Diffstat (limited to 'hypervideo_dl/extractor/funimation.py')
-rw-r--r--hypervideo_dl/extractor/funimation.py14
1 files changed, 8 insertions, 6 deletions
diff --git a/hypervideo_dl/extractor/funimation.py b/hypervideo_dl/extractor/funimation.py
index 6aa9bc9..18363c1 100644
--- a/hypervideo_dl/extractor/funimation.py
+++ b/hypervideo_dl/extractor/funimation.py
@@ -1,6 +1,3 @@
-# coding: utf-8
-from __future__ import unicode_literals
-
import random
import re
import string
@@ -8,17 +5,18 @@ import string
from .common import InfoExtractor
from ..compat import compat_HTTPError
from ..utils import (
+ ExtractorError,
determine_ext,
int_or_none,
join_nonempty,
js_to_json,
+ make_archive_id,
orderedSet,
qualities,
str_or_none,
traverse_obj,
try_get,
urlencode_postdata,
- ExtractorError,
)
@@ -245,11 +243,14 @@ class FunimationIE(FunimationBaseIE):
'language_preference': language_preference(lang.lower()),
})
formats.extend(current_formats)
+ if not formats and (requested_languages or requested_versions):
+ self.raise_no_formats(
+ 'There are no video formats matching the requested languages/versions', expected=True, video_id=display_id)
self._remove_duplicate_formats(formats)
- self._sort_formats(formats, ('lang', 'source'))
return {
- 'id': initial_experience_id if only_initial_experience else episode_id,
+ 'id': episode_id,
+ '_old_archive_ids': [make_archive_id(self, initial_experience_id)],
'display_id': display_id,
'duration': duration,
'title': episode['episodeTitle'],
@@ -264,6 +265,7 @@ class FunimationIE(FunimationBaseIE):
'formats': formats,
'thumbnails': thumbnails,
'subtitles': subtitles,
+ '_format_sort_fields': ('lang', 'source'),
}
def _get_subtitles(self, subtitles, experience_id, episode, display_id, format_name):