Fix MediasetPlay
This commit is contained in:
+26
-27
@@ -2,6 +2,7 @@
|
|||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
# Canale per Mediaset Play
|
# Canale per Mediaset Play
|
||||||
# ------------------------------------------------------------
|
# ------------------------------------------------------------
|
||||||
|
from platformcode import logger
|
||||||
import uuid
|
import uuid
|
||||||
|
|
||||||
import requests, sys
|
import requests, sys
|
||||||
@@ -96,7 +97,7 @@ def mainlist(item):
|
|||||||
|
|
||||||
def search(item, text):
|
def search(item, text):
|
||||||
itemlist = []
|
itemlist = []
|
||||||
support.info(text)
|
support.debug(text)
|
||||||
item.search = text
|
item.search = text
|
||||||
|
|
||||||
try:
|
try:
|
||||||
@@ -110,7 +111,7 @@ def search(item, text):
|
|||||||
|
|
||||||
|
|
||||||
def menu(item):
|
def menu(item):
|
||||||
support.info()
|
support.debug()
|
||||||
itemlist = []
|
itemlist = []
|
||||||
# itemlist = [item.clone(title=support.typo(item.args[0], 'bullet bold'), url='', action='peliculas')]
|
# itemlist = [item.clone(title=support.typo(item.args[0], 'bullet bold'), url='', action='peliculas')]
|
||||||
if item.url:
|
if item.url:
|
||||||
@@ -140,7 +141,7 @@ def liveDict():
|
|||||||
return livedict
|
return livedict
|
||||||
|
|
||||||
def live(item):
|
def live(item):
|
||||||
support.info()
|
support.debug()
|
||||||
itemlist = []
|
itemlist = []
|
||||||
for key, value in liveDict().items():
|
for key, value in liveDict().items():
|
||||||
itemlist.append(item.clone(title=support.typo(key, 'bold'),
|
itemlist.append(item.clone(title=support.typo(key, 'bold'),
|
||||||
@@ -156,7 +157,7 @@ def live(item):
|
|||||||
|
|
||||||
|
|
||||||
def peliculas(item):
|
def peliculas(item):
|
||||||
support.info()
|
support.debug()
|
||||||
itemlist = []
|
itemlist = []
|
||||||
titlelist = []
|
titlelist = []
|
||||||
contentType = ''
|
contentType = ''
|
||||||
@@ -218,12 +219,12 @@ def peliculas(item):
|
|||||||
|
|
||||||
|
|
||||||
def epmenu(item):
|
def epmenu(item):
|
||||||
support.info()
|
support.debug()
|
||||||
itemlist = []
|
itemlist = []
|
||||||
if item.seriesid:
|
if item.seriesid:
|
||||||
seasons = current_session.get('https://feed.entertainment.tv.theplatform.eu/f/PR1GhC/mediaset-prod-tv-seasons?bySeriesId=' + item.seriesid).json()['entries']
|
seasons = current_session.get('https://feed.entertainment.tv.theplatform.eu/f/PR1GhC/mediaset-prod-tv-seasons?bySeriesId=' + item.seriesid).json()['entries']
|
||||||
for season in seasons:
|
for season in seasons:
|
||||||
if 'mediasettvseason$brandId' in season and 'mediasettvseason$displaySeason' in seasons:
|
if 'mediasettvseason$brandId' in season and 'mediasettvseason$displaySeason' in season:
|
||||||
itemlist.append(
|
itemlist.append(
|
||||||
item.clone(seriesid = '',
|
item.clone(seriesid = '',
|
||||||
title=support.typo(season['mediasettvseason$displaySeason'], 'bold'),
|
title=support.typo(season['mediasettvseason$displaySeason'], 'bold'),
|
||||||
@@ -237,17 +238,19 @@ def epmenu(item):
|
|||||||
itemlist.append(
|
itemlist.append(
|
||||||
item.clone(action='episodios',
|
item.clone(action='episodios',
|
||||||
title=support.typo(entry['description'], 'bold'),
|
title=support.typo(entry['description'], 'bold'),
|
||||||
url=entry['mediasetprogram$subBrandId']))
|
url=entry['mediasetprogram$subBrandId'],
|
||||||
|
order=entry.get('mediasetprogram$order',0)))
|
||||||
if len(itemlist) == 1: return episodios(itemlist[0])
|
if len(itemlist) == 1: return episodios(itemlist[0])
|
||||||
|
itemlist = sorted(itemlist, key=lambda it: it.order)
|
||||||
return itemlist
|
return itemlist
|
||||||
|
|
||||||
|
|
||||||
def episodios(item):
|
def episodios(item):
|
||||||
support.info()
|
support.debug()
|
||||||
itemlist = []
|
itemlist = []
|
||||||
episode = ''
|
|
||||||
|
|
||||||
json = current_session.get('https://feed.entertainment.tv.theplatform.eu/f/PR1GhC/mediaset-prod-all-programs?byCustomValue={subBrandId}{' + item.url + '}').json()['entries']
|
json = current_session.get('https://feed.entertainment.tv.theplatform.eu/f/PR1GhC/mediaset-prod-all-programs?byCustomValue={subBrandId}{' + item.url + '}').json()['entries']
|
||||||
|
|
||||||
|
|
||||||
for it in json:
|
for it in json:
|
||||||
urls = []
|
urls = []
|
||||||
if 'media' in it:
|
if 'media' in it:
|
||||||
@@ -255,10 +258,6 @@ def episodios(item):
|
|||||||
urls.append(key['publicUrl'])
|
urls.append(key['publicUrl'])
|
||||||
if urls:
|
if urls:
|
||||||
title = it['title']
|
title = it['title']
|
||||||
# if it['tvSeasonNumber'] and it['tvSeasonEpisodeNumber'] and 'puntata del' not in title.lower():
|
|
||||||
# item.infoLabels['season'] = it['tvSeasonNumber']
|
|
||||||
# item.infoLabels['episode'] = it['tvSeasonEpisodeNumber']
|
|
||||||
# episode = '%dx%02d - ' % (it['tvSeasonNumber'], it['tvSeasonEpisodeNumber'])
|
|
||||||
itemlist.append(
|
itemlist.append(
|
||||||
item.clone(action='findvideos',
|
item.clone(action='findvideos',
|
||||||
title=support.typo(title, 'bold'),
|
title=support.typo(title, 'bold'),
|
||||||
@@ -269,28 +268,30 @@ def episodios(item):
|
|||||||
urls=urls,
|
urls=urls,
|
||||||
url=it['mediasetprogram$pageUrl'],
|
url=it['mediasetprogram$pageUrl'],
|
||||||
year=it.get('year',''),
|
year=it.get('year',''),
|
||||||
|
ep= it.get('tvSeasonEpisodeNumber', 0) if it.get('tvSeasonEpisodeNumber', 0) else 0,
|
||||||
forcethumb=True,
|
forcethumb=True,
|
||||||
no_return=True))
|
no_return=True))
|
||||||
# support.dbg()
|
|
||||||
if 'episodi' in item.title.lower() or 'puntate intere' in item.title.lower():
|
if 'episodi' in item.title.lower():
|
||||||
itemlist.reverse()
|
itemlist.reverse()
|
||||||
# if episode:
|
elif 'puntate intere' in item.title.lower():
|
||||||
# itemlist = sorted(itemlist, key=lambda it: it.title)
|
itemlist.sort(key=lambda it: it.ep)
|
||||||
# support.videolibrary(itemlist, item)
|
|
||||||
|
if len(itemlist) == 1: return findvideos(itemlist[0])
|
||||||
|
|
||||||
return itemlist
|
return itemlist
|
||||||
|
|
||||||
|
|
||||||
def findvideos(item):
|
def findvideos(item):
|
||||||
support.info()
|
support.debug()
|
||||||
itemlist = [support.Item(server='directo', title='Mediaset Play', url=item.urls, action='play')]
|
itemlist = [support.Item(server='directo', title='Mediaset Play', url=item.urls, action='play')]
|
||||||
return support.server(item, itemlist=itemlist, Download=False)
|
return support.server(item, itemlist=itemlist, Download=False)
|
||||||
|
|
||||||
|
|
||||||
def play(item):
|
def play(item):
|
||||||
support.info()
|
support.debug()
|
||||||
if item.livefilter:
|
if item.livefilter:
|
||||||
d = liveDict()[item.livefilter]
|
d = liveDict()[item.livefilter]
|
||||||
# support.dbg()
|
|
||||||
item = item.clone(title=support.typo(item.livefilter, 'bold'), fulltitle=item.livefilter, urls=d['urls'], plot=d['plot'], action='play', forcethumb=True, no_return=True)
|
item = item.clone(title=support.typo(item.livefilter, 'bold'), fulltitle=item.livefilter, urls=d['urls'], plot=d['plot'], action='play', forcethumb=True, no_return=True)
|
||||||
support.thumb(item, live=True)
|
support.thumb(item, live=True)
|
||||||
if not item.urls: urls = item.url
|
if not item.urls: urls = item.url
|
||||||
@@ -307,21 +308,20 @@ def play(item):
|
|||||||
data = support.match(sec_data, patron=r'<video src="([^"]+)').match
|
data = support.match(sec_data, patron=r'<video src="([^"]+)').match
|
||||||
break
|
break
|
||||||
else:
|
else:
|
||||||
# support.dbg()
|
|
||||||
data = url
|
data = url
|
||||||
|
|
||||||
return support.servertools.find_video_items(item, data=data)
|
return support.servertools.find_video_items(item, data=data)
|
||||||
|
|
||||||
|
|
||||||
def subBrand(json):
|
def subBrand(json):
|
||||||
support.info()
|
support.debug()
|
||||||
subBrandId = current_session.get('https://feed.entertainment.tv.theplatform.eu/f/PR1GhC/mediaset-prod-all-brands?byCustomValue={brandId}{' + json + '}').json()['entries'][-1]['mediasetprogram$subBrandId']
|
subBrandId = current_session.get('https://feed.entertainment.tv.theplatform.eu/f/PR1GhC/mediaset-prod-all-brands?byCustomValue={brandId}{' + json + '}').json()['entries'][-1]['mediasetprogram$subBrandId']
|
||||||
json = current_session.get('https://feed.entertainment.tv.theplatform.eu/f/PR1GhC/mediaset-prod-all-programs?byCustomValue={subBrandId}{' + subBrandId + '}').json()['entries']
|
json = current_session.get('https://feed.entertainment.tv.theplatform.eu/f/PR1GhC/mediaset-prod-all-programs?byCustomValue={subBrandId}{' + subBrandId + '}').json()['entries']
|
||||||
return json
|
return json
|
||||||
|
|
||||||
|
|
||||||
def get_from_id(item):
|
def get_from_id(item):
|
||||||
support.info()
|
support.debug()
|
||||||
json = current_session.get(entry.format(id=item.url)).json()
|
json = current_session.get(entry.format(id=item.url)).json()
|
||||||
if 'components' in json:
|
if 'components' in json:
|
||||||
id = quote(",".join(json["components"]))
|
id = quote(",".join(json["components"]))
|
||||||
@@ -333,7 +333,7 @@ def get_from_id(item):
|
|||||||
|
|
||||||
def get_programs(item, ret=[], args={}):
|
def get_programs(item, ret=[], args={}):
|
||||||
hasMore = False
|
hasMore = False
|
||||||
support.info('DICT=',item.url)
|
support.debug('DICT=',item.url)
|
||||||
url = ''
|
url = ''
|
||||||
|
|
||||||
if 'search' in item.args:
|
if 'search' in item.args:
|
||||||
@@ -365,7 +365,6 @@ def get_programs(item, ret=[], args={}):
|
|||||||
if url:
|
if url:
|
||||||
support.logger.info(url)
|
support.logger.info(url)
|
||||||
json = current_session.get(url).json()
|
json = current_session.get(url).json()
|
||||||
# support.logger.debug(json)
|
|
||||||
if 'response' in json:
|
if 'response' in json:
|
||||||
json = json['response']
|
json = json['response']
|
||||||
if 'hasMore' in json:
|
if 'hasMore' in json:
|
||||||
|
|||||||
Reference in New Issue
Block a user