aboutsummaryrefslogtreecommitdiffstats
path: root/hypervideo_dl/extractor/udemy.py
diff options
context:
space:
mode:
Diffstat (limited to 'hypervideo_dl/extractor/udemy.py')
-rw-r--r--hypervideo_dl/extractor/udemy.py23
1 files changed, 7 insertions, 16 deletions
diff --git a/hypervideo_dl/extractor/udemy.py b/hypervideo_dl/extractor/udemy.py
index 88b2310..4faad58 100644
--- a/hypervideo_dl/extractor/udemy.py
+++ b/hypervideo_dl/extractor/udemy.py
@@ -1,19 +1,12 @@
-from __future__ import unicode_literals
-
import re
+import urllib.request
from .common import InfoExtractor
-from ..compat import (
- compat_HTTPError,
- compat_kwargs,
- compat_str,
- compat_urllib_request,
- compat_urlparse,
-)
+from ..compat import compat_HTTPError, compat_str, compat_urlparse
from ..utils import (
+ ExtractorError,
determine_ext,
extract_attributes,
- ExtractorError,
float_or_none,
int_or_none,
js_to_json,
@@ -132,7 +125,7 @@ class UdemyIE(InfoExtractor):
headers['User-Agent'] = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.109 Safari/537.36'
kwargs['headers'] = headers
ret = super(UdemyIE, self)._download_webpage_handle(
- *args, **compat_kwargs(kwargs))
+ *args, **kwargs)
if not ret:
return ret
webpage, _ = ret
@@ -151,14 +144,14 @@ class UdemyIE(InfoExtractor):
'X-Udemy-Snail-Case': 'true',
'X-Requested-With': 'XMLHttpRequest',
}
- for cookie in self._downloader.cookiejar:
+ for cookie in self.cookiejar:
if cookie.name == 'client_id':
headers['X-Udemy-Client-Id'] = cookie.value
elif cookie.name == 'access_token':
headers['X-Udemy-Bearer-Token'] = cookie.value
headers['X-Udemy-Authorization'] = 'Bearer %s' % cookie.value
- if isinstance(url_or_request, compat_urllib_request.Request):
+ if isinstance(url_or_request, urllib.request.Request):
for header, value in headers.items():
url_or_request.add_header(header, value)
else:
@@ -398,8 +391,6 @@ class UdemyIE(InfoExtractor):
if f.get('url'):
formats.append(f)
- self._sort_formats(formats)
-
return {
'id': video_id,
'title': title,
@@ -412,7 +403,7 @@ class UdemyIE(InfoExtractor):
}
-class UdemyCourseIE(UdemyIE):
+class UdemyCourseIE(UdemyIE): # XXX: Do not subclass from concrete IE
IE_NAME = 'udemy:course'
_VALID_URL = r'https?://(?:[^/]+\.)?udemy\.com/(?P<id>[^/?#&]+)'
_TESTS = [{