[mixch] Add MixchArchiveIE (#2373)

Closes #2363
Authored by: Lesmiscore
This commit is contained in:
Lesmiscore (Naoya Ozaki) 2022-01-19 22:45:35 +09:00 committed by GitHub
parent b143e83ec9
commit ba1c671d2e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 35 additions and 2 deletions

View File

@ -829,7 +829,10 @@
) )
from .mit import TechTVMITIE, OCWMITIE from .mit import TechTVMITIE, OCWMITIE
from .mitele import MiTeleIE from .mitele import MiTeleIE
from .mixch import MixchIE from .mixch import (
MixchIE,
MixchArchiveIE,
)
from .mixcloud import ( from .mixcloud import (
MixcloudIE, MixcloudIE,
MixcloudUserIE, MixcloudUserIE,

View File

@ -11,7 +11,7 @@ class MixchIE(InfoExtractor):
IE_NAME = 'mixch' IE_NAME = 'mixch'
_VALID_URL = r'https?://(?:www\.)?mixch\.tv/u/(?P<id>\d+)' _VALID_URL = r'https?://(?:www\.)?mixch\.tv/u/(?P<id>\d+)'
TESTS = [{ _TESTS = [{
'url': 'https://mixch.tv/u/16236849/live', 'url': 'https://mixch.tv/u/16236849/live',
'skip': 'don\'t know if this live persists', 'skip': 'don\'t know if this live persists',
'info_dict': { 'info_dict': {
@ -53,3 +53,33 @@ def _real_extract(self, url):
}], }],
'is_live': True, 'is_live': True,
} }
class MixchArchiveIE(InfoExtractor):
IE_NAME = 'mixch:archive'
_VALID_URL = r'https?://(?:www\.)?mixch\.tv/archive/(?P<id>\d+)'
_TESTS = [{
'url': 'https://mixch.tv/archive/421',
'skip': 'paid video, no DRM. expires at Jan 23',
'info_dict': {
'id': '421',
'title': '96NEKO SHOW TIME',
}
}]
def _real_extract(self, url):
video_id = self._match_id(url)
webpage = self._download_webpage(url, video_id)
html5_videos = self._parse_html5_media_entries(
url, webpage.replace('video-js', 'video'), video_id, 'hls')
if not html5_videos:
self.raise_login_required(method='cookies')
infodict = html5_videos[0]
infodict.update({
'id': video_id,
'title': self._html_search_regex(r'class="archive-title">(.+?)</', webpage, 'title')
})
return infodict