From 357e9ae715f627a785e2d9de19ed805c7d7db7f6 Mon Sep 17 00:00:00 2001
From: =?utf8?q?Rog=C3=A9rio=20Brito?= <rbrito@ime.usp.br>
Date: Wed, 7 Aug 2013 20:21:53 -0300
Subject: [PATCH] Imported Upstream version 2013.08.08

---
 test/test_youtube_sig.py             |  79 ---------------------------
 youtube-dl                           | Bin 169216 -> 173074 bytes
 youtube_dl/extractor/__init__.py     |   3 +
 youtube_dl/extractor/arte.py         |  32 ++++++++++-
 youtube_dl/extractor/collegehumor.py |   2 +-
 youtube_dl/extractor/muzu.py         |  64 ++++++++++++++++++++++
 youtube_dl/extractor/myvideo.py      |  18 +++++-
 youtube_dl/extractor/ooyala.py       |  52 ++++++++++++++++++
 youtube_dl/extractor/videofyme.py    |  49 +++++++++++++++++
 youtube_dl/extractor/youtube.py      |   8 +--
 youtube_dl/utils.py                  |   2 +-
 youtube_dl/version.py                |   2 +-
 12 files changed, 222 insertions(+), 89 deletions(-)
 delete mode 100644 test/test_youtube_sig.py
 create mode 100644 youtube_dl/extractor/muzu.py
 create mode 100644 youtube_dl/extractor/ooyala.py
 create mode 100644 youtube_dl/extractor/videofyme.py

diff --git a/test/test_youtube_sig.py b/test/test_youtube_sig.py
deleted file mode 100644
index d645c08..0000000
--- a/test/test_youtube_sig.py
+++ /dev/null
@@ -1,79 +0,0 @@
-#!/usr/bin/env python
-
-import unittest
-import sys
-
-# Allow direct execution
-import os
-sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
-
-from youtube_dl.extractor.youtube import YoutubeIE
-from helper import FakeYDL
-
-ie = YoutubeIE(FakeYDL())
-sig = ie._decrypt_signature
-sig_age_gate = ie._decrypt_signature_age_gate
-
-class TestYoutubeSig(unittest.TestCase):
-    def test_92(self):
-        wrong = "F9F9B6E6FD47029957AB911A964CC20D95A181A5D37A2DBEFD67D403DB0E8BE4F4910053E4E8A79.0B70B.0B80B8"
-        right = "69B6E6FD47029957AB911A9F4CC20D95A181A5D3.A2DBEFD67D403DB0E8BE4F4910053E4E8A7980B7"
-        self.assertEqual(sig(wrong), right)
-
-    def test_90(self):
-        wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={[]}|:;?/>.<'`"
-        right = "mrtyuioplkjhgfdsazxcvbne1234567890QWER[YUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={`]}|"
-        self.assertEqual(sig(wrong), right)
-
-    def test_88(self):
-        wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={[]}|:;?/>.<"
-        right = "J:|}][{=+-_)(*&;%$#@>MNBVCXZASDFGH^KLPOIUYTREWQ0987654321mnbvcxzasdfghrklpoiuytej"
-        self.assertEqual(sig(wrong), right)
-
-    def test_87(self):
-        wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$^&*()_-+={[]}|:;?/>.<"
-        right = "tyuioplkjhgfdsazxcv<nm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$^&*()_-+={[]}|:;?/>"
-        self.assertEqual(sig(wrong), right)
-
-    def test_86(self):
-        wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={[|};?/>.<"
-        right = ">.1}|[{=+-_)(*&^%$#@!MNBVCXZASDFGHJK<POIUYTREW509876L432/mnbvcxzasdfghjklpoiuytre"
-        self.assertEqual(sig(wrong), right)
-
-    def test_85(self):
-        wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={[};?/>.<"
-        right = "ertyuiqplkjhgfdsazx$vbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#<%^&*()_-+={[};?/c"
-        self.assertEqual(sig(wrong), right)
-
-    def test_84(self):
-        wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={[};?>.<"
-        right = "<.>?;}[{=+-_)(*&^%$#@!MNBVCXZASDFGHJKLPOIUYTREWe098765432rmnbvcxzasdfghjklpoiuyt1"
-        self.assertEqual(sig(wrong), right)
-
-    def test_83(self):
-        wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!#$%^&*()_+={[};?/>.<"
-        right = "qwertyuioplkjhg>dsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!#$%^&*()_+={[};?/f"
-        self.assertEqual(sig(wrong), right)
-
-    def test_82(self):
-        wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKHGFDSAZXCVBNM!@#$%^&*(-+={[};?/>.<"
-        right = "Q>/?;}[{=+-(*<^%$#@!MNBVCXZASDFGHKLPOIUY8REWT0q&7654321mnbvcxzasdfghjklpoiuytrew9"
-        self.assertEqual(sig(wrong), right)
-
-    def test_81(self):
-        wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKHGFDSAZXCVBNM!@#$%^&*(-+={[};?/>."
-        right = "C>/?;}[{=+-(*&^%$#@!MNBVYXZASDFGHKLPOIU.TREWQ0q87659321mnbvcxzasdfghjkl4oiuytrewp"
-        self.assertEqual(sig(wrong), right)
-
-    def test_79(self):
-        wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKHGFDSAZXCVBNM!@#$%^&*(-+={[};?/"
-        right = "Z?;}[{=+-(*&^%$#@!MNBVCXRASDFGHKLPOIUYT/EWQ0q87659321mnbvcxzasdfghjkl4oiuytrewp"
-        self.assertEqual(sig(wrong), right)
-    
-    def test_86_age_gate(self):
-        wrong = "qwertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!@#$%^&*()_-+={[|};?/>.<"
-        right = "ertyuioplkjhgfdsazxcvbnm1234567890QWERTYUIOPLKJHGFDSAZXCVBNM!/#$%^&*()_-+={[|};?@"
-        self.assertEqual(sig_age_gate(wrong), right)
-
-if __name__ == '__main__':
-    unittest.main()
diff --git a/youtube-dl b/youtube-dl
index 39baeee938d5f6bcdbd4a1f049eb2b7619d5598a..69d3434889e64ed6b3270fe579758501f7dfafdb 100755
GIT binary patch
delta 29703
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
E9}lzlk^lez

delta 25755
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
U3C#-53hoCT9NZ5F5O9_MA1AsD8~^|S

diff --git a/youtube_dl/extractor/__init__.py b/youtube_dl/extractor/__init__.py
index c20172a..84c02c2 100644
--- a/youtube_dl/extractor/__init__.py
+++ b/youtube_dl/extractor/__init__.py
@@ -45,9 +45,11 @@ from .livestream import LivestreamIE
 from .metacafe import MetacafeIE
 from .mixcloud import MixcloudIE
 from .mtv import MTVIE
+from .muzu import MuzuTVIE
 from .myspass import MySpassIE
 from .myvideo import MyVideoIE
 from .nba import NBAIE
+from .ooyala import OoyalaIE
 from .photobucket import PhotobucketIE
 from .pornotube import PornotubeIE
 from .rbmaradio import RBMARadioIE
@@ -72,6 +74,7 @@ from .ustream import UstreamIE
 from .vbox7 import Vbox7IE
 from .veoh import VeohIE
 from .vevo import VevoIE
+from .videofyme import VideofyMeIE
 from .vimeo import VimeoIE, VimeoChannelIE
 from .vine import VineIE
 from .c56 import C56IE
diff --git a/youtube_dl/extractor/arte.py b/youtube_dl/extractor/arte.py
index 18d5916..69b3b0a 100644
--- a/youtube_dl/extractor/arte.py
+++ b/youtube_dl/extractor/arte.py
@@ -17,13 +17,14 @@ class ArteTvIE(InfoExtractor):
     """
     _EMISSION_URL = r'(?:http://)?www\.arte.tv/guide/(?P<lang>fr|de)/(?:(?:sendungen|emissions)/)?(?P<id>.*?)/(?P<name>.*?)(\?.*)?'
     _VIDEOS_URL = r'(?:http://)?videos.arte.tv/(?P<lang>fr|de)/.*-(?P<id>.*?).html'
+    _LIVEWEB_URL = r'(?:http://)?liveweb.arte.tv/(?P<lang>fr|de)/(?P<subpage>.+?)/(?P<name>.+)'
     _LIVE_URL = r'index-[0-9]+\.html$'
 
     IE_NAME = u'arte.tv'
 
     @classmethod
     def suitable(cls, url):
-        return any(re.match(regex, url) for regex in (cls._EMISSION_URL, cls._VIDEOS_URL))
+        return any(re.match(regex, url) for regex in (cls._EMISSION_URL, cls._VIDEOS_URL, cls._LIVEWEB_URL))
 
     # TODO implement Live Stream
     # from ..utils import compat_urllib_parse
@@ -68,6 +69,12 @@ class ArteTvIE(InfoExtractor):
             lang = mobj.group('lang')
             return self._extract_video(url, id, lang)
 
+        mobj = re.match(self._LIVEWEB_URL, url)
+        if mobj is not None:
+            name = mobj.group('name')
+            lang = mobj.group('lang')
+            return self._extract_liveweb(url, name, lang)
+
         if re.search(self._LIVE_URL, video_id) is not None:
             raise ExtractorError(u'Arte live streams are not yet supported, sorry')
             # self.extractLiveStream(url)
@@ -85,7 +92,7 @@ class ArteTvIE(InfoExtractor):
 
         info_dict = {'id': player_info['VID'],
                      'title': player_info['VTI'],
-                     'description': player_info['VDE'],
+                     'description': player_info.get('VDE'),
                      'upload_date': unified_strdate(player_info['VDA'].split(' ')[0]),
                      'thumbnail': player_info['programImage'],
                      'ext': 'flv',
@@ -104,6 +111,8 @@ class ArteTvIE(InfoExtractor):
         formats = filter(_match_lang, formats)
         # We order the formats by quality
         formats = sorted(formats, key=lambda f: int(f['height']))
+        # Prefer videos without subtitles in the same language
+        formats = sorted(formats, key=lambda f: re.match(r'VO(F|A)-STM\1', f['versionCode']) is None)
         # Pick the best quality
         format_info = formats[-1]
         if format_info['mediaType'] == u'rtmp':
@@ -144,3 +153,22 @@ class ArteTvIE(InfoExtractor):
                 'url': video_url,
                 'ext': 'flv',
                 }
+
+    def _extract_liveweb(self, url, name, lang):
+        """Extract form http://liveweb.arte.tv/"""
+        webpage = self._download_webpage(url, name)
+        video_id = self._search_regex(r'eventId=(\d+?)("|&)', webpage, u'event id')
+        config_xml = self._download_webpage('http://download.liveweb.arte.tv/o21/liveweb/events/event-%s.xml' % video_id,
+                                            video_id, u'Downloading information')
+        config_doc = xml.etree.ElementTree.fromstring(config_xml.encode('utf-8'))
+        event_doc = config_doc.find('event')
+        url_node = event_doc.find('video').find('urlHd')
+        if url_node is None:
+            url_node = video_doc.find('urlSd')
+
+        return {'id': video_id,
+                'title': event_doc.find('name%s' % lang.capitalize()).text,
+                'url': url_node.text.replace('MP4', 'mp4'),
+                'ext': 'flv',
+                'thumbnail': self._og_search_thumbnail(webpage),
+                }
diff --git a/youtube_dl/extractor/collegehumor.py b/youtube_dl/extractor/collegehumor.py
index 5badde0..30b9c75 100644
--- a/youtube_dl/extractor/collegehumor.py
+++ b/youtube_dl/extractor/collegehumor.py
@@ -10,7 +10,7 @@ from ..utils import (
 
 
 class CollegeHumorIE(InfoExtractor):
-    _VALID_URL = r'^(?:https?://)?(?:www\.)?collegehumor\.com/(video|embed|e)/(?P<videoid>[0-9]+)/(?P<shorttitle>.*)$'
+    _VALID_URL = r'^(?:https?://)?(?:www\.)?collegehumor\.com/(video|embed|e)/(?P<videoid>[0-9]+)/?(?P<shorttitle>.*)$'
 
     _TEST = {
         u'url': u'http://www.collegehumor.com/video/6902724/comic-con-cosplay-catastrophe',
diff --git a/youtube_dl/extractor/muzu.py b/youtube_dl/extractor/muzu.py
new file mode 100644
index 0000000..03e31ea
--- /dev/null
+++ b/youtube_dl/extractor/muzu.py
@@ -0,0 +1,64 @@
+import re
+import json
+
+from .common import InfoExtractor
+from ..utils import (
+    compat_urllib_parse,
+    determine_ext,
+)
+
+
+class MuzuTVIE(InfoExtractor):
+    _VALID_URL = r'https?://www.muzu.tv/(.+?)/(.+?)/(?P<id>\d+)'
+    IE_NAME = u'muzu.tv'
+
+    _TEST = {
+        u'url': u'http://www.muzu.tv/defected/marcashken-featuring-sos-cat-walk-original-mix-music-video/1981454/',
+        u'file': u'1981454.mp4',
+        u'md5': u'98f8b2c7bc50578d6a0364fff2bfb000',
+        u'info_dict': {
+            u'title': u'Cat Walk (Original Mix)',
+            u'description': u'md5:90e868994de201b2570e4e5854e19420',
+            u'uploader': u'MarcAshken featuring SOS',
+        },
+    }
+
+    def _real_extract(self, url):
+        mobj = re.match(self._VALID_URL, url)
+        video_id = mobj.group('id')
+
+        info_data = compat_urllib_parse.urlencode({'format': 'json',
+                                                   'url': url,
+                                                   })
+        video_info_page = self._download_webpage('http://www.muzu.tv/api/oembed/?%s' % info_data,
+                                                 video_id, u'Downloading video info')
+        info = json.loads(video_info_page)
+
+        player_info_page = self._download_webpage('http://player.muzu.tv/player/playerInit?ai=%s' % video_id,
+                                                  video_id, u'Downloading player info')
+        video_info = json.loads(player_info_page)['videos'][0]
+        for quality in ['1080' , '720', '480', '360']:
+            if video_info.get('v%s' % quality):
+                break
+
+        data = compat_urllib_parse.urlencode({'ai': video_id,
+                                              # Even if each time you watch a video the hash changes,
+                                              # it seems to work for different videos, and it will work
+                                              # even if you use any non empty string as a hash
+                                              'viewhash': 'VBNff6djeV4HV5TRPW5kOHub2k',
+                                              'device': 'web',
+                                              'qv': quality,
+                                              })
+        video_url_page = self._download_webpage('http://player.muzu.tv/player/requestVideo?%s' % data,
+                                                video_id, u'Downloading video url')
+        video_url_info = json.loads(video_url_page)
+        video_url = video_url_info['url']
+
+        return {'id': video_id,
+                'title': info['title'],
+                'url': video_url,
+                'ext': determine_ext(video_url),
+                'thumbnail': info['thumbnail_url'],
+                'description': info['description'],
+                'uploader': info['author_name'],
+                }
diff --git a/youtube_dl/extractor/myvideo.py b/youtube_dl/extractor/myvideo.py
index b2a7b1d..0404e6e 100644
--- a/youtube_dl/extractor/myvideo.py
+++ b/youtube_dl/extractor/myvideo.py
@@ -2,11 +2,13 @@ import binascii
 import base64
 import hashlib
 import re
+import json
 
 from .common import InfoExtractor
 from ..utils import (
     compat_ord,
     compat_urllib_parse,
+    compat_urllib_request,
 
     ExtractorError,
 )
@@ -16,7 +18,7 @@ from ..utils import (
 class MyVideoIE(InfoExtractor):
     """Information Extractor for myvideo.de."""
 
-    _VALID_URL = r'(?:http://)?(?:www\.)?myvideo\.de/watch/([0-9]+)/([^?/]+).*'
+    _VALID_URL = r'(?:http://)?(?:www\.)?myvideo\.de/(?:[^/]+/)?watch/([0-9]+)/([^?/]+).*'
     IE_NAME = u'myvideo'
     _TEST = {
         u'url': u'http://www.myvideo.de/watch/8229274/bowling_fail_or_win',
@@ -85,6 +87,20 @@ class MyVideoIE(InfoExtractor):
                 'ext':      video_ext,
             }]
 
+        mobj = re.search(r'data-video-service="/service/data/video/%s/config' % video_id, webpage)
+        if mobj is not None:
+            request = compat_urllib_request.Request('http://www.myvideo.de/service/data/video/%s/config' % video_id, '')
+            response = self._download_webpage(request, video_id,
+                                              u'Downloading video info')
+            info = json.loads(base64.b64decode(response).decode('utf-8'))
+            return {'id': video_id,
+                    'title': info['title'],
+                    'url': info['streaming_url'].replace('rtmpe', 'rtmpt'),
+                    'play_path': info['filename'],
+                    'ext': 'flv',
+                    'thumbnail': info['thumbnail'][0]['url'],
+                    }
+
         # try encxml
         mobj = re.search('var flashvars={(.+?)}', webpage)
         if mobj is None:
diff --git a/youtube_dl/extractor/ooyala.py b/youtube_dl/extractor/ooyala.py
new file mode 100644
index 0000000..b734722
--- /dev/null
+++ b/youtube_dl/extractor/ooyala.py
@@ -0,0 +1,52 @@
+import re
+import json
+
+from .common import InfoExtractor
+from ..utils import unescapeHTML
+
+class OoyalaIE(InfoExtractor):
+    _VALID_URL = r'https?://.+?\.ooyala\.com/.*?embedCode=(?P<id>.+?)(&|$)'
+
+    _TEST = {
+        # From http://it.slashdot.org/story/13/04/25/178216/recovering-data-from-broken-hard-drives-and-ssds-video
+        u'url': u'http://player.ooyala.com/player.js?embedCode=pxczE2YjpfHfn1f3M-ykG_AmJRRn0PD8',
+        u'file': u'pxczE2YjpfHfn1f3M-ykG_AmJRRn0PD8.mp4',
+        u'md5': u'3f5cceb3a7bf461d6c29dc466cf8033c',
+        u'info_dict': {
+            u'title': u'Explaining Data Recovery from Hard Drives and SSDs',
+            u'description': u'How badly damaged does a drive have to be to defeat Russell and his crew? Apparently, smashed to bits.',
+        },
+    }
+
+    def _extract_result(self, info, more_info):
+        return {'id': info['embedCode'],
+                'ext': 'mp4',
+                'title': unescapeHTML(info['title']),
+                'url': info['url'],
+                'description': unescapeHTML(more_info['description']),
+                'thumbnail': more_info['promo'],
+                }
+
+    def _real_extract(self, url):
+        mobj = re.match(self._VALID_URL, url)
+        embedCode = mobj.group('id')
+        player_url = 'http://player.ooyala.com/player.js?embedCode=%s' % embedCode
+        player = self._download_webpage(player_url, embedCode)
+        mobile_url = self._search_regex(r'mobile_player_url="(.+?)&device="',
+                                        player, u'mobile player url')
+        mobile_player = self._download_webpage(mobile_url, embedCode)
+        videos_info = self._search_regex(r'eval\("\((\[{.*?stream_redirect.*?}\])\)"\);', mobile_player, u'info').replace('\\"','"')
+        videos_more_info = self._search_regex(r'eval\("\(({.*?\\"promo\\".*?})\)"', mobile_player, u'more info').replace('\\"','"')
+        videos_info = json.loads(videos_info)
+        videos_more_info =json.loads(videos_more_info)
+
+        if videos_more_info.get('lineup'):
+            videos = [self._extract_result(info, more_info) for (info, more_info) in zip(videos_info, videos_more_info['lineup'])]
+            return {'_type': 'playlist',
+                    'id': embedCode,
+                    'title': unescapeHTML(videos_more_info['title']),
+                    'entries': videos,
+                    }
+        else:
+            return self._extract_result(videos_info[0], videos_more_info)
+        
diff --git a/youtube_dl/extractor/videofyme.py b/youtube_dl/extractor/videofyme.py
new file mode 100644
index 0000000..0410667
--- /dev/null
+++ b/youtube_dl/extractor/videofyme.py
@@ -0,0 +1,49 @@
+import re
+import xml.etree.ElementTree
+
+from .common import InfoExtractor
+from ..utils import (
+    find_xpath_attr,
+    determine_ext,
+)
+
+class VideofyMeIE(InfoExtractor):
+    _VALID_URL = r'https?://(www.videofy.me/.+?|p.videofy.me/v)/(?P<id>\d+)(&|#|$)'
+    IE_NAME = u'videofy.me'
+
+    _TEST = {
+        u'url': u'http://www.videofy.me/thisisvideofyme/1100701',
+        u'file':  u'1100701.mp4',
+        u'md5': u'2046dd5758541d630bfa93e741e2fd79',
+        u'info_dict': {
+            u'title': u'This is VideofyMe',
+            u'description': None,
+            u'uploader': u'VideofyMe',
+            u'uploader_id': u'thisisvideofyme',
+        },
+        
+    }
+
+    def _real_extract(self, url):
+        mobj = re.match(self._VALID_URL, url)
+        video_id = mobj.group('id')
+        config_xml = self._download_webpage('http://sunshine.videofy.me/?videoId=%s' % video_id,
+                                            video_id)
+        config = xml.etree.ElementTree.fromstring(config_xml.encode('utf-8'))
+        video = config.find('video')
+        sources = video.find('sources')
+        url_node = find_xpath_attr(sources, 'source', 'id', 'HQ on')
+        if url_node is None:
+            url_node = find_xpath_attr(sources, 'source', 'id', 'HQ off')
+        video_url = url_node.find('url').text
+
+        return {'id': video_id,
+                'title': video.find('title').text,
+                'url': video_url,
+                'ext': determine_ext(video_url),
+                'thumbnail': video.find('thumb').text,
+                'description': video.find('description').text,
+                'uploader': config.find('blog/name').text,
+                'uploader_id': video.find('identifier').text,
+                'view_count': re.search(r'\d+', video.find('views').text).group(),
+                }
diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py
index bc89a14..b191021 100644
--- a/youtube_dl/extractor/youtube.py
+++ b/youtube_dl/extractor/youtube.py
@@ -338,13 +338,13 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
         elif 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]
         elif len(s) == 87:
-            return s[4:23] + s[86] + s[24:85]
+            return s[83:53:-1] + s[3] + s[52:40:-1] + s[86] + s[39:10:-1] + s[0] + s[9:3:-1] + s[53]
         elif len(s) == 86:
             return s[83:85] + s[26] + s[79:46:-1] + s[85] + s[45:36:-1] + s[30] + s[35:30:-1] + s[46] + s[29:26:-1] + s[82] + s[25:1:-1]
         elif len(s) == 85:
             return s[2:8] + s[0] + s[9:21] + s[65] + s[22:65] + s[84] + s[66:82] + s[21]
         elif len(s) == 84:
-            return s[83:36:-1] + s[2] + s[35:26:-1] + s[3] + s[25:3:-1] + s[26]
+            return s[83:27:-1] + s[0] + s[26:5:-1] + s[2:0:-1] + s[27]
         elif len(s) == 83:
             return s[:15] + s[80] + s[16:80] + s[15]
         elif len(s) == 82:
@@ -718,8 +718,8 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
                             s = url_data['s'][0]
                             if age_gate:
                                 player_version = self._search_regex(r'ad3-(.+?)\.swf',
-                                    video_info['ad3_module'][0], 'flash player',
-                                    fatal=False)
+                                    video_info['ad3_module'][0] if 'ad3_module' in video_info else 'NOT FOUND',
+                                    'flash player', fatal=False)
                                 player = 'flash player %s' % player_version
                             else:
                                 player = u'html5 player %s' % self._search_regex(r'html5player-(.+?)\.js', video_webpage,
diff --git a/youtube_dl/utils.py b/youtube_dl/utils.py
index cf2ea65..59eeaf4 100644
--- a/youtube_dl/utils.py
+++ b/youtube_dl/utils.py
@@ -207,7 +207,7 @@ if sys.version_info >= (2,7):
     def find_xpath_attr(node, xpath, key, val):
         """ Find the xpath xpath[@key=val] """
         assert re.match(r'^[a-zA-Z]+$', key)
-        assert re.match(r'^[a-zA-Z@]*$', val)
+        assert re.match(r'^[a-zA-Z@\s]*$', val)
         expr = xpath + u"[@%s='%s']" % (key, val)
         return node.find(expr)
 else:
diff --git a/youtube_dl/version.py b/youtube_dl/version.py
index 4fc85fa..82c2464 100644
--- a/youtube_dl/version.py
+++ b/youtube_dl/version.py
@@ -1,2 +1,2 @@
 
-__version__ = '2013.08.02'
+__version__ = '2013.08.08'
-- 
2.41.1