diff options
Diffstat (limited to 'youtube_dl/extractor/zhihu.py')
-rw-r--r-- | youtube_dl/extractor/zhihu.py | 69 |
1 files changed, 0 insertions, 69 deletions
diff --git a/youtube_dl/extractor/zhihu.py b/youtube_dl/extractor/zhihu.py deleted file mode 100644 index d1ed55be3..000000000 --- a/youtube_dl/extractor/zhihu.py +++ /dev/null @@ -1,69 +0,0 @@ -# coding: utf-8 -from __future__ import unicode_literals - -from .common import InfoExtractor -from ..utils import float_or_none, int_or_none - - -class ZhihuIE(InfoExtractor): - _VALID_URL = r'https?://(?:www\.)?zhihu\.com/zvideo/(?P<id>[0-9]+)' - _TEST = { - 'url': 'https://www.zhihu.com/zvideo/1342930761977176064', - 'md5': 'c8d4c9cd72dd58e6f9bc9c2c84266464', - 'info_dict': { - 'id': '1342930761977176064', - 'ext': 'mp4', - 'title': '写春联也太难了吧!', - 'thumbnail': r're:^https?://.*\.jpg', - 'uploader': '桥半舫', - 'timestamp': 1612959715, - 'upload_date': '20210210', - 'uploader_id': '244ecb13b0fd7daf92235288c8ca3365', - 'duration': 146.333, - 'view_count': int, - 'like_count': int, - 'comment_count': int, - } - } - - def _real_extract(self, url): - video_id = self._match_id(url) - zvideo = self._download_json( - 'https://www.zhihu.com/api/v4/zvideos/' + video_id, video_id) - title = zvideo['title'] - video = zvideo.get('video') or {} - - formats = [] - for format_id, q in (video.get('playlist') or {}).items(): - play_url = q.get('url') or q.get('play_url') - if not play_url: - continue - formats.append({ - 'asr': int_or_none(q.get('sample_rate')), - 'filesize': int_or_none(q.get('size')), - 'format_id': format_id, - 'fps': int_or_none(q.get('fps')), - 'height': int_or_none(q.get('height')), - 'tbr': float_or_none(q.get('bitrate')), - 'url': play_url, - 'width': int_or_none(q.get('width')), - }) - self._sort_formats(formats) - - author = zvideo.get('author') or {} - url_token = author.get('url_token') - - return { - 'id': video_id, - 'title': title, - 'formats': formats, - 'thumbnail': video.get('thumbnail') or zvideo.get('image_url'), - 'uploader': author.get('name'), - 'timestamp': int_or_none(zvideo.get('published_at')), - 'uploader_id': author.get('id'), - 'uploader_url': 'https://www.zhihu.com/people/' + url_token if url_token else None, - 'duration': float_or_none(video.get('duration')), - 'view_count': int_or_none(zvideo.get('play_count')), - 'like_count': int_or_none(zvideo.get('liked_count')), - 'comment_count': int_or_none(zvideo.get('comment_count')), - } |