projects
/
youtube-dl
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
|
inline
| side by side (parent:
3f64379
)
[udemy:course] Skip non-video lectures
author
Sergey M․
<dstftw@gmail.com>
Fri, 1 Apr 2016 16:38:56 +0000
(22:38 +0600)
committer
Sergey M․
<dstftw@gmail.com>
Fri, 1 Apr 2016 16:38:56 +0000
(22:38 +0600)
youtube_dl/extractor/udemy.py
patch
|
blob
|
history
diff --git
a/youtube_dl/extractor/udemy.py
b/youtube_dl/extractor/udemy.py
index a788cdd7725af5705368bcc1d6c2db448419dd65..bc69e6e415f241c0606cd55ce9c8ba08ec33a35a 100644
(file)
--- a/
youtube_dl/extractor/udemy.py
+++ b/
youtube_dl/extractor/udemy.py
@@
-193,12
+193,12
@@
class UdemyIE(InfoExtractor):
asset = lecture['asset']
asset = lecture['asset']
- asset_type = asset.get('asset
Type') or asset.get('asset_t
ype')
+ asset_type = asset.get('asset
_type') or asset.get('assetT
ype')
if asset_type != 'Video':
raise ExtractorError(
'Lecture %s is not a video' % lecture_id, expected=True)
if asset_type != 'Video':
raise ExtractorError(
'Lecture %s is not a video' % lecture_id, expected=True)
- stream_url = asset.get('stream
Url') or asset.get('stream_u
rl')
+ stream_url = asset.get('stream
_url') or asset.get('streamU
rl')
if stream_url:
youtube_url = self._search_regex(
r'(https?://www\.youtube\.com/watch\?v=.*)', stream_url, 'youtube URL', default=None)
if stream_url:
youtube_url = self._search_regex(
r'(https?://www\.youtube\.com/watch\?v=.*)', stream_url, 'youtube URL', default=None)
@@
-206,7
+206,7
@@
class UdemyIE(InfoExtractor):
return self.url_result(youtube_url, 'Youtube')
video_id = asset['id']
return self.url_result(youtube_url, 'Youtube')
video_id = asset['id']
- thumbnail = asset.get('thumbnail
Url') or asset.get('thumbnail_u
rl')
+ thumbnail = asset.get('thumbnail
_url') or asset.get('thumbnailU
rl')
duration = float_or_none(asset.get('data', {}).get('duration'))
formats = []
duration = float_or_none(asset.get('data', {}).get('duration'))
formats = []
@@
-325,7
+325,7
@@
class UdemyCourseIE(UdemyIE):
'https://www.udemy.com/api-2.0/courses/%s/cached-subscriber-curriculum-items' % course_id,
course_id, 'Downloading course curriculum', query={
'fields[chapter]': 'title,object_index',
'https://www.udemy.com/api-2.0/courses/%s/cached-subscriber-curriculum-items' % course_id,
course_id, 'Downloading course curriculum', query={
'fields[chapter]': 'title,object_index',
- 'fields[lecture]': 'title',
+ 'fields[lecture]': 'title
,asset
',
'page_size': '1000',
})
'page_size': '1000',
})
@@
-334,6
+334,11
@@
class UdemyCourseIE(UdemyIE):
for entry in response['results']:
clazz = entry.get('_class')
if clazz == 'lecture':
for entry in response['results']:
clazz = entry.get('_class')
if clazz == 'lecture':
+ asset = entry.get('asset')
+ if isinstance(asset, dict):
+ asset_type = asset.get('asset_type') or asset.get('assetType')
+ if asset_type != 'Video':
+ continue
lecture_id = entry.get('id')
if lecture_id:
entry = {
lecture_id = entry.get('id')
if lecture_id:
entry = {