projects
/
youtube-dl
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
[udemy] Fix course enroll (Closes #9393)
[youtube-dl]
/
youtube_dl
/
extractor
/
flickr.py
diff --git
a/youtube_dl/extractor/flickr.py
b/youtube_dl/extractor/flickr.py
index e97754d36e734da8cdb4be23fe7b225d8d4b86d1..0a3de14988dc06e92a7a27e52c4c7838caf69b2b 100644
(file)
--- a/
youtube_dl/extractor/flickr.py
+++ b/
youtube_dl/extractor/flickr.py
@@
-1,7
+1,7
@@
from __future__ import unicode_literals
from .common import InfoExtractor
from __future__ import unicode_literals
from .common import InfoExtractor
-from ..compat import compat_urllib_parse
+from ..compat import compat_urllib_parse
_urlencode
from ..utils import (
ExtractorError,
int_or_none,
from ..utils import (
ExtractorError,
int_or_none,
@@
-25,6
+25,8
@@
class FlickrIE(InfoExtractor):
'uploader_id': '10922353@N03',
'uploader': 'Forest Wander',
'comment_count': int,
'uploader_id': '10922353@N03',
'uploader': 'Forest Wander',
'comment_count': int,
+ 'view_count': int,
+ 'tags': list,
}
}
}
}
@@
-40,7
+42,7
@@
class FlickrIE(InfoExtractor):
}
if secret:
query['secret'] = secret
}
if secret:
query['secret'] = secret
- data = self._download_json(self._API_BASE_URL + compat_urllib_parse
.
urlencode(query), video_id, note)
+ data = self._download_json(self._API_BASE_URL + compat_urllib_parse
_
urlencode(query), video_id, note)
if data['stat'] != 'ok':
raise ExtractorError(data['message'])
return data
if data['stat'] != 'ok':
raise ExtractorError(data['message'])
return data
@@
-48,13
+50,19
@@
class FlickrIE(InfoExtractor):
def _real_extract(self, url):
video_id = self._match_id(url)
def _real_extract(self, url):
video_id = self._match_id(url)
- api_key = self._download_json('https://www.flickr.com/hermes_error_beacon.gne', video_id, 'Downloading api key',)['site_key']
+ api_key = self._download_json(
+ 'https://www.flickr.com/hermes_error_beacon.gne', video_id,
+ 'Downloading api key')['site_key']
- video_info = self._call_api('photos.getInfo', video_id, api_key, 'Downloading video info')['photo']
+ video_info = self._call_api(
+ 'photos.getInfo', video_id, api_key, 'Downloading video info')['photo']
if video_info['media'] == 'video':
if video_info['media'] == 'video':
- streams = self._call_api('video.getStreamInfo', video_id, api_key, 'Downloading streams info', video_info['secret'])['streams']
+ streams = self._call_api(
+ 'video.getStreamInfo', video_id, api_key,
+ 'Downloading streams info', video_info['secret'])['streams']
- preference = qualities(['iphone_wifi', '700', 'appletv', 'orig'])
+ preference = qualities(
+ ['288p', 'iphone_wifi', '100', '300', '700', '360p', 'appletv', '720p', '1080p', 'orig'])
formats = []
for stream in streams['stream']:
formats = []
for stream in streams['stream']:
@@
-78,4
+86,8
@@
class FlickrIE(InfoExtractor):
'uploader_id': owner.get('nsid'),
'uploader': owner.get('realname'),
'comment_count': int_or_none(video_info.get('comments', {}).get('_content')),
'uploader_id': owner.get('nsid'),
'uploader': owner.get('realname'),
'comment_count': int_or_none(video_info.get('comments', {}).get('_content')),
+ 'view_count': int_or_none(video_info.get('views')),
+ 'tags': [tag.get('_content') for tag in video_info.get('tags', {}).get('tag', [])]
}
}
+ else:
+ raise ExtractorError('not a video', expected=True)