1
0
mirror of https://github.com/l1ving/youtube-dl synced 2024-12-31 01:35:44 +08:00

[Piksel] Add another app token regex

This commit is contained in:
John Hawkinson 2017-02-04 10:23:14 -05:00 committed by Sergey M
parent 643dc0fcfe
commit c2521c1ac6

View File

@ -16,7 +16,8 @@ from ..utils import (
class PikselIE(InfoExtractor): class PikselIE(InfoExtractor):
_VALID_URL = r'https?://player\.piksel\.com/v/(?P<id>[a-z0-9]+)' _VALID_URL = r'https?://player\.piksel\.com/v/(?P<id>[a-z0-9]+)'
_TEST = { _TESTS = [
{
'url': 'http://player.piksel.com/v/nv60p12f', 'url': 'http://player.piksel.com/v/nv60p12f',
'md5': 'd9c17bbe9c3386344f9cfd32fad8d235', 'md5': 'd9c17bbe9c3386344f9cfd32fad8d235',
'info_dict': { 'info_dict': {
@ -27,7 +28,21 @@ class PikselIE(InfoExtractor):
'timestamp': 1465231790, 'timestamp': 1465231790,
'upload_date': '20160606', 'upload_date': '20160606',
} }
},
{
# Original source: http://www.uscourts.gov/cameras-courts/state-washington-vs-donald-j-trump-et-al
'url': 'https://player.piksel.com/v/v80kqp41',
'md5': '753ddcd8cc8e4fa2dda4b7be0e77744d',
'info_dict': {
'id': 'v80kqp41',
'ext': 'mp4',
'title': 'WAW- State of Washington vs. Donald J. Trump, et al',
'description': 'State of Washington vs. Donald J. Trump, et al, Case Number 17-CV-00141-JLR, TRO Hearing, Civil Rights Case, 02/3/2017, 1:00 PM (PST), Seattle Federal Courthouse, Seattle, WA, Judge James L. Robart presiding.',
'timestamp': 1486171129,
'upload_date': '20170204',
} }
}
]
@staticmethod @staticmethod
def _extract_url(webpage): def _extract_url(webpage):
@ -40,8 +55,10 @@ class PikselIE(InfoExtractor):
def _real_extract(self, url): def _real_extract(self, url):
video_id = self._match_id(url) video_id = self._match_id(url)
webpage = self._download_webpage(url, video_id) webpage = self._download_webpage(url, video_id)
app_token = self._search_regex( app_token = self._search_regex([
r'clientAPI\s*:\s*"([^"]+)"', webpage, 'app token') r'clientAPI\s*:\s*"([^"]+)"',
r'data-de-api-key\s*=\s*"([^"]+)"'
], webpage, 'app token')
response = self._download_json( response = self._download_json(
'http://player.piksel.com/ws/ws_program/api/%s/mode/json/apiv/5' % app_token, 'http://player.piksel.com/ws/ws_program/api/%s/mode/json/apiv/5' % app_token,
video_id, query={ video_id, query={