[ccma] Separate pattern for collection URLs

This commit is contained in:
Víctor López Juan 2017-12-23 23:39:15 +01:00
parent 9deb3bea04
commit 96b31b9b84

View File

@ -13,7 +13,7 @@ from ..utils import (
class CCMAIE(InfoExtractor): class CCMAIE(InfoExtractor):
_VALID_URL = r'https?://(?:www\.)?ccma\.cat/(?P<channel>tv3|catradio|[^/*])(?:[^/]+/)*?(?P<type>audio|video|[^/]*)/(?P<id>\d+)/?$' _VALID_URL = r'^https?://(?:www\.)?ccma\.cat/(?:[^/]+/)*?(?P<type>video|audio)/(?P<id1>\d+).*$|^https?://(?:www\.)?ccma\.cat/(?P<channel>tv3|catradio)/(?:[^/]+/)*?(?P<id2>\d+)/?$'
_TESTS = [{ _TESTS = [{
'url': 'http://www.ccma.cat/tv3/alacarta/lespot-de-la-marato-de-tv3/lespot-de-la-marato-de-tv3/video/5630208/', 'url': 'http://www.ccma.cat/tv3/alacarta/lespot-de-la-marato-de-tv3/lespot-de-la-marato-de-tv3/video/5630208/',
'md5': '7296ca43977c8ea4469e719c609b0871', 'md5': '7296ca43977c8ea4469e719c609b0871',
@ -49,20 +49,13 @@ class CCMAIE(InfoExtractor):
def _real_extract(self, url): def _real_extract(self, url):
m = re.match(self._VALID_URL, url) m = re.match(self._VALID_URL, url)
url_channel = m.group('channel') if m.group('type'):
url_type = m.group('type') media_type = m.group('type')
# Heuristics to guess media type media_id = m.group('id1')
if url_type == 'video': elif m.group('channel'):
media_type = 'video' channel_to_type = {'tv3':'video','catradio':'audio'}
elif url_type == 'audio': media_type = channel_to_type[m.group('channel')]
media_type = 'audio' media_id = m.group('id2')
elif url_channel == 'tv3':
media_type = 'video'
elif url_channel == 'catradio':
media_type = 'audio'
else:
media_type = 'video'
media_id = m.group('id')
media_data = {} media_data = {}
formats = [] formats = []
profiles = ['pc'] if media_type == 'audio' else ['mobil', 'pc'] profiles = ['pc'] if media_type == 'audio' else ['mobil', 'pc']