def show_root_menu(): """ Show the plugin root menu """ li_style = xbmcgui.ListItem('[B]' + G.LANGUAGE(32001) + '[/B]', offscreen=True) li_style.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'camera.jpg'), 'fanart': G.FANART_PATH }) add_directory_item({"mode": "camera"}, li_style) li_style = xbmcgui.ListItem('[B]' + G.LANGUAGE(32002) + '[/B]', offscreen=True) li_style.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'senato.png'), 'fanart': G.FANART_PATH }) add_directory_item({"mode": "senato"}, li_style) li_style = xbmcgui.ListItem('[B]' + G.LANGUAGE(32003) + '[/B]', offscreen=True) li_style.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'tv.png'), 'fanart': G.FANART_PATH }) add_directory_item({"mode": "tv"}, li_style) li_style = xbmcgui.ListItem('[B]' + G.LANGUAGE(32004) + '[/B]', offscreen=True) li_style.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'radio.png'), 'fanart': G.FANART_PATH }) add_directory_item({"mode": "radio"}, li_style) xbmcplugin.endOfDirectory(handle=G.PLUGIN_HANDLE, succeeded=True)
def show_root_menu(): ''' Show the plugin root menu ''' liStyle = xbmcgui.ListItem('[B]' + G.LANGUAGE(32002) + '[/B]', offscreen=True) liStyle.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'direttalivela7.jpg'), 'fanart': G.FANART_PATH }) addDirectoryItem_nodup({"mode": "diretta_la7"}, liStyle, folder=False) liStyle = xbmcgui.ListItem('[B]' + G.LANGUAGE(32009) + '[/B]', offscreen=True) liStyle.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'direttalivela7d.jpg'), 'fanart': G.FANART_PATH }) addDirectoryItem_nodup({"mode": "diretta_la7d"}, liStyle, folder=False) liStyle = xbmcgui.ListItem('[B]' + G.LANGUAGE(32001) + '[/B]', offscreen=True) liStyle.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'rivedila7.jpg'), 'fanart': G.FANART_PATH }) addDirectoryItem_nodup({"mode": "rivedi_la7"}, liStyle) liStyle = xbmcgui.ListItem('[B]' + G.LANGUAGE(32004) + '[/B]', offscreen=True) liStyle.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'rivedila7d.jpg'), 'fanart': G.FANART_PATH }) addDirectoryItem_nodup({"mode": "rivedi_la7d"}, liStyle) liStyle = xbmcgui.ListItem('[B]' + G.LANGUAGE(32010) + '[/B]', offscreen=True) liStyle.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'la7prime.jpg'), 'fanart': G.FANART_PATH }) addDirectoryItem_nodup({"mode": "la7_prime"}, liStyle) liStyle = xbmcgui.ListItem('[B]' + G.LANGUAGE(32006) + '[/B]', offscreen=True) liStyle.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'programmila7la7d.jpg'), 'fanart': G.FANART_PATH }) addDirectoryItem_nodup({"mode": "tutti_programmi"}, liStyle) liStyle = xbmcgui.ListItem('[B]' + G.LANGUAGE(32007) + '[/B]', offscreen=True) liStyle.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'tgmeteo.jpg'), 'fanart': G.FANART_PATH }) addDirectoryItem_nodup({"mode": "tg_meteo"}, liStyle) liStyle = xbmcgui.ListItem('[B]' + G.LANGUAGE(32008) + '[/B]', offscreen=True) liStyle.setArt({ 'thumb': os.path.join(G.THUMB_PATH, 'techela7.jpg'), 'fanart': G.FANART_PATH }) addDirectoryItem_nodup({"mode": "teche_la7"}, liStyle) xbmcplugin.endOfDirectory(handle=G.PLUGIN_HANDLE, succeeded=True)
def play_video(page_video, live): #xbmc.log('PAGE VIDEO-----: '+str(page_video),xbmc.LOGINFO) link_video = '' #regex1 = 'vS = "(.*?)"' regex2 = '/content/(.*?).mp4' regex3 = 'm3u8: "(.*?)"' #regex4 = ' <iframe src="(.*?)"' req = Request(page_video, headers={'user-agent': G.HEADERS_SET['user-agent']}) page = urlopen(req).read() html = page.decode() if live: return # if re.findall(regex1, html): # xbmc.log('REGEX1-----: '+str(re.findall(regex1, html)),xbmc.LOGINFO) # link_video = re.findall(regex1, html)[0] else: if re.findall(regex2, html): #xbmc.log('REGEX2-----: '+str(re.findall(regex2, html)),xbmc.LOGINFO) link_video = 'https://awsvodpkg.iltrovatore.it/local/hls/,/content/' + re.findall( regex2, html)[0] + '.mp4.urlset/master.m3u8' #xbmc.log('LINK2-----: '+str(link_video),xbmc.LOGINFO) elif re.findall(regex3, html): #xbmc.log('REGEX3-----: '+str(re.findall(regex3, html)),xbmc.LOGINFO) link_video = re.findall(regex3, html)[0] else: #xbmc.log('DECODIFICA DRM',xbmc.LOGINFO) play_dirette(page_video, False) return # elif re.findall(regex4, html): # #xbmc.log('REGEX4-----: '+str(re.findall(regex4, html)),xbmc.LOGINFO) # iframe = re.findall(regex4, html)[0] # req2 = Request(iframe,headers={'user-agent': G.HEADERS_SET['user-agent']}) # page2=urlopen(req2) # html2=page2.read() # if re.findall(regex2, html2): # #xbmc.log('REGEX2-B---: '+str(re.findall(regex2, html)),xbmc.LOGINFO) # link_video = str("https:")+re.findall(regex2, html2)[0] listitem = xbmcgui.ListItem(G.TITOLO, offscreen=True) listitem.setInfo('video', {'Title': G.TITOLO}) if (G.THUMB != ""): listitem.setArt({'thumb': G.THUMB}) listitem.setInfo('video', {'plot': G.PLOT}) if link_video == '': xbmc.log('NO VIDEO LINK', xbmc.LOGINFO) xbmcgui.Dialog().ok(G.PLUGIN_NAME, G.LANGUAGE(32005)) xbmcplugin.setResolvedUrl(G.PLUGIN_HANDLE, False, listitem) return listitem.setProperty('inputstream', 'inputstream.adaptive') listitem.setProperty('inputstream.adaptive.manifest_type', 'hls') listitem.setPath(link_video) xbmcplugin.setResolvedUrl(G.PLUGIN_HANDLE, True, listitem)
def pagenext(pagenb): if pagenb: liStyle = xbmcgui.ListItem('[B]' + G.LANGUAGE(32003) + '[/B]', offscreen=True) liStyle.setArt({'fanart': G.FANART_PATH}) addDirectoryItem_nodup( { "mode": G.MODE, "link": G.LINK, "page": G.PAGENUM + 1 }, liStyle)
def video_programma(): #xbmc.log('LINK GLOBAL------: '+str(G.LINK),xbmc.LOGINFO) if G.LINK == 'flag_omnibus_news': G.OMNIBUS_NEWS = True G.LINK = G.URL_BASE + '/omnibus' if (G.PAGENUM == 0) and (G.LINK != G.URL_BASE + '/film'): video_programma_landpage() if G.LINK != G.URL_TGLA7D: req = Request(G.LINK + "/rivedila7", headers={'user-agent': G.HEADERS_SET['user-agent']}) try: page = urlopen(req) except Exception as e: e = sys.exc_info()[0] xbmc.log('EXCEP URL: ' + str(e), xbmc.LOGINFO) if xbmcgui.Dialog().ok(G.PLUGIN_NAME, G.LANGUAGE(32005)): exit() html = BeautifulSoup(page, 'html5lib') if G.PAGENUM == 0: xbmcplugin.addDirectoryItem( handle=G.PLUGIN_HANDLE, url='', listitem=xbmcgui.ListItem("[B][COLOR blue]" + 'SETTIMANA' + "[/COLOR][/B]", offscreen=True)) # FIRST VIDEO if html.find('div', class_='ultima_puntata'): first = html.find('div', class_='ultima_puntata') elif html.find('div', class_='contenitoreUltimaReplicaLa7d'): first = html.find('div', class_='contenitoreUltimaReplicaLa7d') elif html.find('div', class_='contenitoreUltimaReplicaNoLuminosa'): first = html.find('div', class_='contenitoreUltimaReplicaNoLuminosa') else: xbmc.log('NO FIRST VIDEO', xbmc.LOGINFO) if xbmcgui.Dialog().ok(G.PLUGIN_NAME, G.LANGUAGE(32005)): exit() titolo = first.find('div', class_='title_puntata').text.strip() if G.OMNIBUS_NEWS == True: first_video(first, titolo, titolo.find(G.FILTRO_OMNIBUS) != -1) elif G.LINK == G.URL_BASE + '/omnibus': first_video(first, titolo, titolo.find(G.FILTRO_OMNIBUS) == -1) else: first_video(first, titolo, True) #xbmc.log('FIRST VIDEO----: '+str(titolo),xbmc.LOGINFO) # WEEK VIDEO if html.findAll(text=" LA SETTIMANA"): video_settimana = html.find( 'div', class_='home-block__content-carousel container-vetrina' ).find_all('div', class_='item') #xbmc.log('LA SETTIMANA----: '+str(video_settimana),xbmc.LOGINFO) if video_settimana: get_rows_video(video_settimana) else: xbmc.log('NO WEEK VIDEO', xbmc.LOGINFO) if html.findAll(text="Puntate Cult"): xbmcplugin.addDirectoryItem( handle=G.PLUGIN_HANDLE, url='', listitem=xbmcgui.ListItem("[B][COLOR blue]" + 'ARCHIVIO' + "[/COLOR][/B]", offscreen=True)) # CULT VIDEO if html.findAll(text="Puntate Cult"): if (G.LINK == G.URL_BASE + '/chi-sceglie-la-seconda-casa') or ( G.LINK == G.URL_BASE + '/lingrediente-perfetto'): req2 = Request( G.LINK + "/rivedila7", headers={'user-agent': G.HEADERS_SET['user-agent']}) else: req2 = Request( G.LINK + "/rivedila7/archivio?page=" + str(G.PAGENUM), headers={'user-agent': G.HEADERS_SET['user-agent']}) page2 = urlopen(req2) html2 = BeautifulSoup(page2, 'html5lib') video_archivio = html2.find( 'div', class_='view-content clearfix').find_all('div', class_='views-row') if video_archivio: get_rows_video(video_archivio) if not G.OMNIBUS_NEWS: page = html2.find('li', class_='pager-next') pagenext(page) #Tg LA7d else: req = Request(G.LINK + "?page=" + str(G.PAGENUM), headers={'user-agent': G.HEADERS_SET['user-agent']}) page = urlopen(req) html = BeautifulSoup(page, 'html5lib') video_tgla7d = html.find('div', class_='tgla7-category').find_all( 'article', class_='tgla7-new clearfix') if video_tgla7d: get_rows_video_tgla7d(video_tgla7d) page = html.find('li', class_='next') pagenext(page) xbmcplugin.setContent(G.PLUGIN_HANDLE, 'episodes') xbmcplugin.endOfDirectory(handle=G.PLUGIN_HANDLE, succeeded=True)