X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2FYoutubeDL.py;h=c5d08b0bbabb572c3711d1ae8119e7eeb7e40e71;hb=f82863851e0e6c3b4bdcbb3cce97eacda3a27c76;hp=d9f83419e1f20cb917a79f4e1bd143fa067220c4;hpb=9d2ecdbc712d4e500dd0207041392b143082ad00;p=youtube-dl diff --git a/youtube_dl/YoutubeDL.py b/youtube_dl/YoutubeDL.py index d9f83419e..c5d08b0bb 100644 --- a/youtube_dl/YoutubeDL.py +++ b/youtube_dl/YoutubeDL.py @@ -148,6 +148,8 @@ class YoutubeDL(object): again. cookiefile: File name where cookies should be read from and dumped to. nocheckcertificate:Do not verify SSL certificates + prefer_insecure: Use HTTP instead of HTTPS to retrieve information. + At the moment, this is only supported by YouTube. proxy: URL of the proxy server to use socket_timeout: Time to wait for unresponsive hosts, in seconds bidi_workaround: Work around buggy terminals without bidirectional text @@ -533,7 +535,7 @@ class YoutubeDL(object): else: raise else: - self.report_error('no suitable InfoExtractor: %s' % url) + self.report_error('no suitable InfoExtractor for URL %s' % url) def process_ie_result(self, ie_result, download=True, extra_info={}): """ @@ -667,6 +669,18 @@ class YoutubeDL(object): if f.get('vcodec') == 'none'] if audio_formats: return audio_formats[0] + elif format_spec == 'bestvideo': + video_formats = [ + f for f in available_formats + if f.get('acodec') == 'none'] + if video_formats: + return video_formats[-1] + elif format_spec == 'worstvideo': + video_formats = [ + f for f in available_formats + if f.get('acodec') == 'none'] + if video_formats: + return video_formats[0] else: extensions = ['mp4', 'flv', 'webm', '3gp'] if format_spec in extensions: @@ -689,9 +703,9 @@ class YoutubeDL(object): if 'display_id' not in info_dict and 'id' in info_dict: info_dict['display_id'] = info_dict['id'] - if info_dict.get('upload_date') is None and info_dict.get('upload_timestamp') is not None: + if info_dict.get('upload_date') is None and info_dict.get('timestamp') is not None: upload_date = datetime.datetime.utcfromtimestamp( - info_dict['upload_timestamp']) + info_dict['timestamp']) info_dict['upload_date'] = upload_date.strftime('%Y%m%d') # This extractors handle format selection themselves