-from __future__ import unicode_literals
-
import json
import re
+import urllib.parse
from .common import InfoExtractor
-from ..compat import (
- compat_parse_qs,
- compat_urllib_parse,
- compat_urllib_parse_unquote,
-)
+from ..compat import compat_parse_qs, compat_urllib_parse_unquote
from ..utils import (
- determine_ext,
ExtractorError,
- int_or_none,
+ determine_ext,
get_element_by_attribute,
+ int_or_none,
mimetype2ext,
)
def _real_extract(self, url):
# Extract id and simplified title from URL
- video_id, display_id = re.match(self._VALID_URL, url).groups()
+ video_id, display_id = self._match_valid_url(url).groups()
# the video may come from an external site
m_external = re.match(r'^(\w{2})-(.*)$', video_id)
headers = {
# Disable family filter
- 'Cookie': 'user=%s; ' % compat_urllib_parse.quote(json.dumps({'ffilter': False}))
+ 'Cookie': 'user=%s; ' % urllib.parse.quote(json.dumps({'ffilter': False}))
}
# AnyClip videos require the flashversion cookie so that we get the link
'url': video_url,
'ext': video_ext,
}]
- self._sort_formats(formats)
return {
'id': video_id,