X-Git-Url: http://git.bitcoin.ninja/index.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fyoutube.py;h=025afb3904ed62da925fb8d7b5db2501cd7b9805;hb=257a2501facdef0a4079e7aa9f037df6935a4fd7;hp=6c8aa9ade76fc65808c1fccabea579dc4e8a8278;hpb=500f3d24324c8d9a53af2a55d9b3dd8c3db79eab;p=youtube-dl diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py index 6c8aa9ade..025afb390 100644 --- a/youtube_dl/extractor/youtube.py +++ b/youtube_dl/extractor/youtube.py @@ -81,6 +81,44 @@ class YoutubeIE(InfoExtractor): '46': '1080x1920', } IE_NAME = u'youtube' + _TESTS = [ + { + u"url": u"http://www.youtube.com/watch?v=BaW_jenozKc", + u"file": u"BaW_jenozKc.mp4", + u"info_dict": { + u"title": u"youtube-dl test video \"'/\\ä↭𝕐", + u"uploader": u"Philipp Hagemeister", + u"uploader_id": u"phihag", + u"upload_date": u"20121002", + u"description": u"test chars: \"'/\\ä↭𝕐\n\nThis is a test video for youtube-dl.\n\nFor more information, contact phihag@phihag.de ." + } + }, + { + u"url": u"http://www.youtube.com/watch?v=1ltcDfZMA3U", + u"file": u"1ltcDfZMA3U.flv", + u"note": u"Test VEVO video (#897)", + u"info_dict": { + u"upload_date": u"20070518", + u"title": u"Maps - It Will Find You", + u"description": u"Music video by Maps performing It Will Find You.", + u"uploader": u"MuteUSA", + u"uploader_id": u"MuteUSA" + } + }, + { + u"url": u"http://www.youtube.com/watch?v=UxxajLWwzqY", + u"file": u"UxxajLWwzqY.mp4", + u"note": u"Test generic use_cipher_signature video (#897)", + u"info_dict": { + u"upload_date": u"20120506", + u"title": u"Icona Pop - I Love It (feat. Charli XCX) [OFFICIAL VIDEO]", + u"description": u"md5:b085c9804f5ab69f4adea963a2dceb3c", + u"uploader": u"IconaPop", + u"uploader_id": u"IconaPop" + } + } + ] + @classmethod def suitable(cls, url): @@ -130,7 +168,7 @@ class YoutubeIE(InfoExtractor): self.to_screen(u'RTMP download detected') def _decrypt_signature(self, s): - """Decrypt the key""" + """Turn the encrypted s field into a working signature""" if len(s) == 88: return s[48] + s[81:67:-1] + s[82] + s[66:62:-1] + s[85] + s[61:48:-1] + s[67] + s[47:12:-1] + s[3] + s[11:3:-1] + s[2] + s[12]