コード例 #1
0
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)
コード例 #2
0
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)
コード例 #3
0
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)
コード例 #4
0
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)
コード例 #5
0
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)