|
@ -1,6 +1,7 @@ |
|
|
from __future__ import unicode_literals |
|
|
from __future__ import unicode_literals |
|
|
|
|
|
|
|
|
import re |
|
|
import re |
|
|
|
|
|
import json |
|
|
|
|
|
|
|
|
from .common import InfoExtractor |
|
|
from .common import InfoExtractor |
|
|
from ..compat import ( |
|
|
from ..compat import ( |
|
@ -154,8 +155,15 @@ class VevoIE(VevoBaseIE): |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
def _initialize_api(self, video_id): |
|
|
def _initialize_api(self, video_id): |
|
|
|
|
|
post_data = json.dumps({ |
|
|
|
|
|
'client_id': 'SPupX1tvqFEopQ1YS6SS', |
|
|
|
|
|
'grant_type': 'urn:vevo:params:oauth:grant-type:anonymous', |
|
|
|
|
|
}).encode('utf-8') |
|
|
|
|
|
headers = { |
|
|
|
|
|
'Content-Type': 'application/json', |
|
|
|
|
|
} |
|
|
req = sanitized_Request( |
|
|
req = sanitized_Request( |
|
|
'http://www.vevo.com/auth', data=b'') |
|
|
|
|
|
|
|
|
'https://accounts.vevo.com/token', post_data, headers) |
|
|
webpage = self._download_webpage( |
|
|
webpage = self._download_webpage( |
|
|
req, None, |
|
|
req, None, |
|
|
note='Retrieving oauth token', |
|
|
note='Retrieving oauth token', |
|
@ -166,7 +174,7 @@ class VevoIE(VevoBaseIE): |
|
|
'%s said: This page is currently unavailable in your region' % self.IE_NAME) |
|
|
'%s said: This page is currently unavailable in your region' % self.IE_NAME) |
|
|
|
|
|
|
|
|
auth_info = self._parse_json(webpage, video_id) |
|
|
auth_info = self._parse_json(webpage, video_id) |
|
|
self._api_url_template = self.http_scheme() + '//apiv2.vevo.com/%s?token=' + auth_info['access_token'] |
|
|
|
|
|
|
|
|
self._api_url_template = self.http_scheme() + '//apiv2.vevo.com/%s?token=' + auth_info['legacy_token'] |
|
|
|
|
|
|
|
|
def _call_api(self, path, *args, **kwargs): |
|
|
def _call_api(self, path, *args, **kwargs): |
|
|
try: |
|
|
try: |
|
|