{"action":"created","issue":{"url":"https://api.github.com/repos/rg3/youtube-dl/issues/7670","labels_url":"https://api.github.com/repos/rg3/youtube-dl/issues/7670/labels{/name}","comments_url":"https://api.github.com/repos/rg3/youtube-dl/issues/7670/comments","events_url":"https://api.github.com/repos/rg3/youtube-dl/issues/7670/events","html_url":"https://github.com/rg3/youtube-dl/issues/7670","id":119182790,"number":7670,"title":"Signature extraction failed / 'NoneType' object has no attribute 'group'","user":{"login":"rptb1","id":419807,"avatar_url":"https://avatars.githubusercontent.com/u/419807?v=3","gravatar_id":"","url":"https://api.github.com/users/rptb1","html_url":"https://github.com/rptb1","followers_url":"https://api.github.com/users/rptb1/followers","following_url":"https://api.github.com/users/rptb1/following{/other_user}","gists_url":"https://api.github.com/users/rptb1/gists{/gist_id}","starred_url":"https://api.github.com/users/rptb1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rptb1/subscriptions","organizations_url":"https://api.github.com/users/rptb1/orgs","repos_url":"https://api.github.com/users/rptb1/repos","events_url":"https://api.github.com/users/rptb1/events{/privacy}","received_events_url":"https://api.github.com/users/rptb1/received_events","type":"User","site_admin":false},"labels":[],"state":"closed","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-11-27T11:43:53Z","updated_at":"2015-11-27T12:02:30Z","closed_at":"2015-11-27T11:51:30Z","body":"Version 2015.11.21 on OS X 10.9.5 installed via MacPorts.\r\n\r\nSome (not all) videos are failing with a signature extraction error, but it also looks like the code is not handling this case very well by not checking for a None result.\r\n\r\nThanks!\r\n\r\n```\r\n$ youtube-dl -v 'https://www.youtube.com/watch?v=qfodIWqR0II'\r\n[debug] System config: []\r\n[debug] User config: []\r\n[debug] Command-line args: [u'-v', u'https://www.youtube.com/watch?v=qfodIWqR0II']\r\n[debug] Encodings: locale UTF-8, fs utf-8, out UTF-8, pref UTF-8\r\n[debug] youtube-dl version 2015.11.21\r\n[debug] Python version 2.7.10 - Darwin-13.4.0-x86_64-i386-64bit\r\n[debug] exe versions: ffmpeg 2.8.2, ffprobe 2.8.2\r\n[debug] Proxy map: {}\r\n[youtube] qfodIWqR0II: Downloading webpage\r\n[youtube] qfodIWqR0II: Downloading video info webpage\r\n[youtube] qfodIWqR0II: Extracting video information\r\n[youtube] {43} signature length 49.43, html5 player en_US-vflFEzfy7\r\n[youtube] qfodIWqR0II: Downloading player https://s.ytimg.com/yts/jsbin/player-en_US-vflFEzfy7/base.js\r\nERROR: Signature extraction failed: Traceback (most recent call last):\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/youtube.py\", line 828, in _decrypt_signature\r\n    video_id, player_url, s\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/youtube.py\", line 755, in _extract_signature_function\r\n    cache_res = res(test_string)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/youtube.py\", line 807, in <lambda>\r\n    return lambda s: initial_function([s])\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 254, in resf\r\n    res, abort = self.interpret_statement(stmt, local_vars)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 55, in interpret_statement\r\n    v = self.interpret_expression(expr, local_vars, allow_recursion)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 135, in interpret_expression\r\n    self._objects[variable] = self.extract_object(variable)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 220, in extract_object\r\n    fields = obj_m.group('fields')\r\nAttributeError: 'NoneType' object has no attribute 'group'\r\n (caused by AttributeError(\"'NoneType' object has no attribute 'group'\",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.\r\nTraceback (most recent call last):\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/youtube.py\", line 828, in _decrypt_signature\r\n    video_id, player_url, s\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/youtube.py\", line 755, in _extract_signature_function\r\n    cache_res = res(test_string)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/youtube.py\", line 807, in <lambda>\r\n    return lambda s: initial_function([s])\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 254, in resf\r\n    res, abort = self.interpret_statement(stmt, local_vars)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 55, in interpret_statement\r\n    v = self.interpret_expression(expr, local_vars, allow_recursion)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 135, in interpret_expression\r\n    self._objects[variable] = self.extract_object(variable)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 220, in extract_object\r\n    fields = obj_m.group('fields')\r\nAttributeError: 'NoneType' object has no attribute 'group'\r\nTraceback (most recent call last):\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/YoutubeDL.py\", line 661, in extract_info\r\n    ie_result = ie.extract(url)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/common.py\", line 290, in extract\r\n    return self._real_extract(url)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/youtube.py\", line 1367, in _real_extract\r\n    encrypted_sig, video_id, player_url, age_gate)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/youtube.py\", line 838, in _decrypt_signature\r\n    'Signature extraction failed: ' + tb, cause=e)\r\nExtractorError: Signature extraction failed: Traceback (most recent call last):\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/youtube.py\", line 828, in _decrypt_signature\r\n    video_id, player_url, s\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/youtube.py\", line 755, in _extract_signature_function\r\n    cache_res = res(test_string)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/extractor/youtube.py\", line 807, in <lambda>\r\n    return lambda s: initial_function([s])\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 254, in resf\r\n    res, abort = self.interpret_statement(stmt, local_vars)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 55, in interpret_statement\r\n    v = self.interpret_expression(expr, local_vars, allow_recursion)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 135, in interpret_expression\r\n    self._objects[variable] = self.extract_object(variable)\r\n  File \"/opt/local/bin/youtube-dl/youtube_dl/jsinterp.py\", line 220, in extract_object\r\n    fields = obj_m.group('fields')\r\nAttributeError: 'NoneType' object has no attribute 'group'\r\n (caused by AttributeError(\"'NoneType' object has no attribute 'group'\",)); please report this issue on https://yt-dl.org/bug . Make sure you are using the latest version; type  youtube-dl -U  to update. Be sure to call youtube-dl with the --verbose flag and include its complete output.\r\n```"},"comment":{"url":"https://api.github.com/repos/rg3/youtube-dl/issues/comments/160124245","html_url":"https://github.com/rg3/youtube-dl/issues/7670#issuecomment-160124245","issue_url":"https://api.github.com/repos/rg3/youtube-dl/issues/7670","id":160124245,"user":{"login":"rptb1","id":419807,"avatar_url":"https://avatars.githubusercontent.com/u/419807?v=3","gravatar_id":"","url":"https://api.github.com/users/rptb1","html_url":"https://github.com/rptb1","followers_url":"https://api.github.com/users/rptb1/followers","following_url":"https://api.github.com/users/rptb1/following{/other_user}","gists_url":"https://api.github.com/users/rptb1/gists{/gist_id}","starred_url":"https://api.github.com/users/rptb1/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/rptb1/subscriptions","organizations_url":"https://api.github.com/users/rptb1/orgs","repos_url":"https://api.github.com/users/rptb1/repos","events_url":"https://api.github.com/users/rptb1/events{/privacy}","received_events_url":"https://api.github.com/users/rptb1/received_events","type":"User","site_admin":false},"created_at":"2015-11-27T12:02:30Z","updated_at":"2015-11-27T12:02:30Z","body":"I did git clone, virtualenv, setup.py, and it all worked. Thanks."}}