Exemplo n.º 1
0
def dictOfMainDirs(filtres):
    liste = []

    liste.append({
        'genreId': -2,
        'nom': '[B]Populaires[/B]',
        'url': POPULAIRE_URL,
        'resume': 'Les videos populaires du moment.'
    })
    liste.append({
        'genreId': -1,
        'nom': '[B]Dossiers[/B]',
        'url': DOSSIERS_URL,
        'resume': 'Des segments abordant un sujet commun.'
    })

    for item in liste:
        item['isDir'] = True
        item['nom'] = urllib2.unquote(item['nom'])
        item['image'] = xbmcaddon.Addon().getAddonInfo('path') + '/icon.png'
        item['fanart'] = xbmcaddon.Addon().getAddonInfo('path') + '/fanart.jpg'
        item['filtres'] = parse.getCopy(filtres)
        item['filtres']['content']['genreId'] = item['genreId']
        item['filtres']['show'] = {}
        item['filtres']['fullNameItems'].append('nomDuShow')
    return liste
Exemplo n.º 2
0
def dictOfPopulaires(filtres):
    liste = [{
        'genreId': -21,
        'nom': 'Populaires en ce moment',
        'url': 'Day/',
        'resume': 'Les videos populaires en ce moment.'
    }]
    liste.append({
        'genreId': -22,
        'nom': 'Populaires cette semaine',
        'url': 'Week/',
        'resume': 'Les videos populaires cette semaine.'
    })
    liste.append({
        'genreId': -23,
        'nom': 'Populaires depuis 1 mois',
        'url': 'Month/',
        'resume': 'Les videos populaires depuis 1 mois.'
    })
    for item in liste:
        item['isDir'] = True
        item['nom'] = urllib2.unquote(item['nom'])
        item['image'] = xbmcaddon.Addon().getAddonInfo('path') + '/icon.png'
        item['fanart'] = xbmcaddon.Addon().getAddonInfo('path') + '/fanart.jpg'
        item['filtres'] = parse.getCopy(filtres)
        item['filtres']['content']['genreId'] = item['genreId']
        item['filtres']['content']['url'] = item['url']
        item['filtres']['show'] = {}
        item['filtres']['fullNameItems'].append('nomDuShow')
    return liste
Exemplo n.º 3
0
def dictOfGenres(filtres):
    liste = []
    liste.append({
        'genreId': 0,
        'nom': '[B]A %C3%A0 Z - Toutes les cat%C3%A9gories[/B]',
        'resume': 'Tout le contenu disponible.'
    })
    liste.append({
        'genreId': 1,
        'nom': 'Documentaires',
        'resume': 'Les documentaires.'
    })
    liste.append({
        'genreId': 2,
        'nom': 'Famille',
        'resume': 'Pour toute la famille.'
    })
    liste.append({'genreId': 3, 'nom': 'Films', 'resume': 'Les films.'})
    liste.append({
        'genreId': 6,
        'nom': 'Jeunesse - tout-petits',
        'resume': 'Pour les petits.'
    })
    liste.append({
        'genreId': 4,
        'nom': 'Jeunesse - grands',
        'resume': 'Pour les plus grands.'
    })
    liste.append({
        'genreId': 5,
        'nom': 'Jeunesse - plus grands',
        'resume': 'Pour les vraiment grands.'
    })
    liste.append({
        'genreId': 7,
        'nom': 'Magazines',
        'resume': 'Les magasines.'
    })
    liste.append({
        'genreId': 9,
        'nom': 'S%C3%A9ries de fiction',
        'resume': 'La fiction.'
    })
    liste.append({
        'genreId': 10,
        'nom': 'Vari%C3%A9t%C3%A9s',
        'resume': 'Pour se divertir.'
    })

    for item in liste:
        item['isDir'] = True
        item['nom'] = urllib2.unquote(item['nom'])
        item['url'] = AZ_URL
        item['image'] = xbmcaddon.Addon().getAddonInfo('path') + '/icon.png'
        item['fanart'] = xbmcaddon.Addon().getAddonInfo('path') + '/fanart.jpg'
        item['filtres'] = parse.getCopy(filtres)
        item['filtres']['content']['genreId'] = item['genreId']

    return liste
Exemplo n.º 4
0
def dictOfMainDirs(filtres):

    liste = [{'genreId': -1, 'nom': '-- Dossiers --', 'url': DOSSIERS_URL,'resume':'Des segments abordant un sujet commun.'}]
    #liste.append({'genreId': -2, 'nom': '-- Populaires --', 'url' : POPULAIRE_URL})
    #liste.append({'genreId': -3, 'nom': '-- R%C3%A9cents --', 'url' : RECENTS_URL})
    for item in liste :
        item['isDir']= True
        item['nom']= urllib2.unquote(item['nom'])
        item['image']=xbmcaddon.Addon().getAddonInfo('path')+'/icon.png'
        item['fanart']=xbmcaddon.Addon().getAddonInfo('path')+'/fanart.jpg'
        item['filtres']= parse.getCopy(filtres)
        item['filtres']['content']['genreId'] = item['genreId']
        item['filtres']['show']={}
        item['filtres']['fullNameItems'].append('nomDuShow')        
    return liste
Exemplo n.º 5
0
def dictOfMainDirs(filtres):

    liste = []
    #liste = [{'genreId': -1, 'nom': '-- EN DIRECT --', 'url': DOSSIERS_URL,'resume':'Aucune emission est en direct presentement'}]

    for item in liste:
        item['isDir'] = True
        item['forceSort'] = True
        item['nom'] = urllib2.unquote(item['nom'])
        item['image'] = xbmcaddon.Addon().getAddonInfo('path') + '/icon.png'
        item['fanart'] = xbmcaddon.Addon().getAddonInfo('path') + '/fanart.jpg'
        item['filtres'] = parse.getCopy(filtres)
        item['filtres']['content']['genreId'] = item['genreId']
        item['filtres']['show'] = {}
        item['filtres']['fullNameItems'].append('nomDuShow')
    return liste
Exemplo n.º 6
0
def formatListe(liste, filtres):
    newListe = []
    for item in liste:
        newItem = {}
        newItem['isDir'] = True
        newItem['nom'] = item['view']['title']
        newItem['mediaBundleId'] = item['mediaBundleId']
        newItem['url'] = MEDIA_BUNDLE_URL + str(item['mediaBundleId'])
        newItem['image'] = getThumbnails(item)
        newItem['genreId'] = ''
        newItem['nomComplet'] = item['view']['title']
        newItem['resume'] = item['view']['description']
        newItem['fanart'] = getFanArt(item)
        newItem['filtres'] = parse.getCopy(filtres)
        newItem['filtres']['content']['mediaBundleId'] = item['mediaBundleId']
        newListe.append(newItem)
    return newListe
Exemplo n.º 7
0
def formatListe(liste, filtres):
    newListe = []
    for item in liste:
        newItem = {}
        newItem['isDir'] = True
        newItem['nom'] = item['view']['title']
        newItem['mediaBundleId'] = item['mediaBundleId']
        newItem['url'] = MEDIA_BUNDLE_URL + str(item['mediaBundleId'])
        newItem['image'] = getThumbnails(item)
        newItem['genreId'] = ''
        newItem['nomComplet'] = item['view']['title']
        newItem['resume'] = item['view']['description']
        newItem['fanart'] = getFanArt(item)
        newItem['filtres'] = parse.getCopy(filtres)
        newItem['filtres']['content']['mediaBundleId'] = item['mediaBundleId']
        newListe.append(newItem)

    return newListe
Exemplo n.º 8
0
def dictOfGenres(filtres):
    liste = [{'genreId': 0, 'nom': 'A %C3%A0 Z - Toutes les cat%C3%A9gories','resume':'Tout le contenu disponible.'}]
    liste.append({'genreId': 1, 'nom': 'Documentaires','resume':'Les documentaires.'})
    liste.append({'genreId': 2, 'nom': 'Famille', 'resume':'Pour toute la famill.e'})
    liste.append({'genreId': 3, 'nom': 'Films','resume':'Les films.'})
    liste.append({'genreId': 6, 'nom': 'Jeunesse - tout-petits','resume':'Pour les petits.'})
    liste.append({'genreId': 4, 'nom': 'Jeunesse - grands','resume':'Pour les plus grands.'})
    liste.append({'genreId': 5, 'nom': 'Jeunesse - plus grands','resume':'Pour les vraiment grands.'})
    liste.append({'genreId': 7, 'nom': 'Magazines','resume':'Les magasines.'})
    liste.append({'genreId': 9, 'nom': 'S%C3%A9ries de fiction','resume':'La fiction.'})
    liste.append({'genreId': 10, 'nom': 'Vari%C3%A9t%C3%A9s','resume':'Pour se divertir.'})

    for item in liste :
        item['isDir']= True
        item['nom']= urllib2.unquote(item['nom'])
        item['url'] = AZ_URL
        item['image']=xbmcaddon.Addon().getAddonInfo('path')+'/icon.png'
        item['fanart']=xbmcaddon.Addon().getAddonInfo('path')+'/fanart.jpg'
        item['filtres'] = parse.getCopy(filtres)
        item['filtres']['content']['genreId'] = item['genreId']

    return liste
Exemplo n.º 9
0
def dictOfGenres(filtres):

    log("dictOfGenres")

    liste = []
    log("contenu")
    contenu = cache.get_cached_content(
        BASE_URL +
        "/configurations?uuid=5a0f10e5f31d1a2&gid=&appId=5955fc5423eec60006c951ef&locale=en",
        False)
    log(contenu)
    config = json.loads(contenu, encoding='utf-8')

    #elems = ET.fromstring(data)

    #startpage = elems.findtext( "startPage" )
    #log(startpage)
    #cat_scrapers = elems.find( "scrapers" ).findall( "entry" )

    #soup = BeautifulStoneSoup(config, convertEntities=BeautifulStoneSoup.XML_ENTITIES)

    log(config)

    #id de la page de démarrage
    startPage = config['startPage']
    log(startPage)

    policyKey = config['policyKey']
    xbmcaddon.Addon().setSetting('policyKey', policyKey)
    log(policyKey)

    accueil = json.loads(cache.get_cached_content(
        BASE_URL + "/page/" + startPage +
        "?uuid=5a0f10e5f31d1a2&gid=&appId=5955fc5423eec60006c951ef&locale=en"),
                         encoding='utf-8')
    #soup_data = BeautifulStoneSoup(data, convertEntities=BeautifulStoneSoup.XML_ENTITIES)

    log("---accueil----")
    log(accueil)

    containers = accueil['container']
    menu = config['menu']['menuItems']

    #menu = soup.findAll('menuitems')
    #log(menu)

    #cartes = soup.findAll("div", { "class" : "card" })
    #cartes = soup.findAll("div", {'class': re.compile(r'\card\b')})

    i = 1

    for carte in menu:

        log("u(carte['title'])")
        log(carte)
        log(u(carte['title']))
        #pageid

        if 'pageId' in carte:
            #log(carte.findAll("img")[0]['src'])
            #log("------------------------------")
            newItem = {
                'genreId': i,
                'nom': u(carte['title']),
                'resume': ".",  #getDescription(carte.findAll("a")[0]['href']),
                'image': None,  #BASE_URL + carte.findAll("img")[0]['src'],
                'url': u(carte['pageId']),
                'filtres': parse.getCopy(filtres)
            }

            newItem['filtres']['content']['url'] = carte['pageId']

            if u(carte['title']) == "Rattrapage" or u(
                    carte['title']) == "Thématiques":
                liste.append(newItem)
            else:
                newItem['nom'] = newItem['nom'] + " - NON FONCTIONNEL"
                liste.append(newItem)

    #for carte in containers :
    #
    #    if 'title' in carte:
    #        log("carte['title']")
    #
    #        log(u(carte['title']))
    #        #pageid
    #
    #
    #        #log(carte.findAll("img")[0]['src'])
    #        #log("------------------------------")
    #        newItem = {   'genreId': i,
    #                      'nom': u(carte['title']),
    #                      'resume': ".", #getDescription(carte.findAll("a")[0]['href']),
    #                      'image' : None, #BASE_URL + carte.findAll("img")[0]['src'],
    #                      'url' : "self",
    #                      'filtres' : parse.getCopy(filtres)
    #                  }
    #
    #        newItem['filtres']['content']['url'] = "self"
    #
    #        liste.append(newItem)

    for item in liste:
        item['isDir'] = True
        item['forceSort'] = False
        item['nom'] = urllib2.unquote(item['nom'])
        #item['url'] = item['url'] or None
        item['image'] = item['image'] or xbmcaddon.Addon().getAddonInfo(
            'path') + '/icon.png'
        item['fanart'] = xbmcaddon.Addon().getAddonInfo('path') + '/fanart.jpg'
        #item['filtres'] = parse.getCopy(filtres)
        item['filtres']['content']['genreId'] = item['genreId']

    #log(liste)

    #while num_threads > 0:
    #    pass

    return liste
Exemplo n.º 10
0
def AjouterSectionAListe(section, infoDict, filtres):
    liste = []

    #for carte in section :
    #carte = carte.parent
    #log(u(carte.getText()))
    #log(carte.findAll("img")[0]['src'])
    #log("------------------------------")

    if 'video-duration' in infoDict:

        duration = -1
        duration = int(infoDict['video-duration']) / 1000

        url = infoDict['assetId']

        newItem = {
            'genreId': 1,
            'nom': u(infoDict['title']),
            'resume': "",
            'image': infoDict['image-background'],
            'url': url,
            'sourceUrl': url,
            'duree': duration,
            'filtres': parse.getCopy(filtres)
        }

        if 'description' in infoDict:
            newItem['resume'] = u(infoDict['description'])
        elif 'shortDescription' in infoDict:
            newItem['resume'] = u(infoDict['shortDescription'])

        newItem['filtres']['content']['url'] = url

        liste.append(newItem)

        for item in liste:
            #log("--url--")
            #log(correctEmissionPageURL(carte.findAll("a")[0]['href']))

            item['isDir'] = False
            item['forceSort'] = False
            item['nom'] = urllib2.unquote(item['nom'])
            #item['url'] = item['url'] or None
            #item['image'] = item['image'] or xbmcaddon.Addon().getAddonInfo('path')+'/icon.png'
            item['fanart'] = None  #filtres['content']['cover']
            #item['filtres'] = parse.getCopy(filtres)
            item['filtres']['content']['genreId'] = item['genreId']
            item[LABEL] = None  # nomBloc
            item['categoryType'] = None  #episode['categoryType']
            item['url'] = None  #episode['permalink']
            #item['image'] = None #getThumbnails(episode)
            item['genreId'] = ''
            item['nomComplet'] = item['nom']  #episode['view']['title']
            #item['resume'] =None # episode['view']['description']
            item[SEASON] = None  #'Saison ' + str(episode['seasonNo'])
            #item['duree'] = 300 #None #episode['duration']/1000

            item['seasonNo'] = None  #episode['seasonNo']
            item['episodeNo'] = None  #episode['episodeNo']
            item['startDate'] = None  #episode['startDate']
            item['endDate'] = None  #episode['endDate']
            item['endDateTxt'] = None  #episode['view']['endDate']

            item['streamInfo'] = None  #episode['streamInfo']

            item['nomDuShow'] = None  #mainShowName

            #item['sourceUrl'] = correctEmissionPageURL(carte.findAll("a")[0]['href']) #"55" #episode['streamInfo']['sourceId']

            item['url'] = "url"  #episode['streamInfo']['sourceId']

            item[
                EPISODE] = None  #'Episode ' + str(episode['episodeNo']).zfill(2)
            #item['fanart'] = None #fanart_url
            #item['nom'] = ''

    else:
        newItem = {
            'genreId': 1,
            'nom': u(infoDict['title']),
            'resume': ".",  #getDescription(carte.findAll("a")[0]['href']),
            #'image' : infoDict['image-background'], #BASE_URL + carte.findAll("img")[0]['src'],
            #'url' : infoDict['pageId'],
            'filtres': parse.getCopy(filtres)
        }

        if 'image-background' in infoDict:
            newItem['image'] = infoDict['image-background']

        if 'url' in infoDict:
            newItem['url'] = infoDict['pageId']
        else:
            newItem['url'] = "accueil"

        if 'description' in infoDict:
            newItem['resume'] = u(infoDict['description'])
        elif 'shortDescription' in infoDict:
            newItem['resume'] = u(infoDict['shortDescription'])

        newItem['filtres']['content']['url'] = newItem['url']
        liste.append(newItem)

        for item in liste:
            item['isDir'] = True
            item['forceSort'] = True
            item['nom'] = urllib2.unquote(item['nom'])
            #item['url'] = item['url'] or None
            item['image'] = item['image'] or xbmcaddon.Addon().getAddonInfo(
                'path') + '/icon.png'
            item['fanart'] = xbmcaddon.Addon().getAddonInfo(
                'path') + '/fanart.jpg'
            #item['filtres'] = parse.getCopy(filtres)
            item['filtres']['content']['genreId'] = item['genreId']

    return liste
Exemplo n.º 11
0
def loadListeSaison(filtres):
    liste = []

    data = cache.get_cached_content(filtres['content']['url'])
    soup = BeautifulSoup(data, convertEntities=BeautifulSoup.HTML_ENTITIES)
    clip = soup.findAll(
        "div", {'class': re.compile('clip-equalizer')})  #|clip-equalizer
    equalizer = soup.find(
        "div", {'class': re.compile('video-equalizer')})  #|clip-equalizer
    cartes = None
    if equalizer:
        cartes = equalizer.findAll("div", {"class": "card__thumb"})

    saisons = soup.findAll("a", {'href': re.compile('.*/saisons/.*')})

    log(saisons)

    cover = xbmcaddon.Addon().getAddonInfo('path') + '/fanart.jpg'
    if soup:
        coverdiv = soup.find("div", {'class': re.compile('banner__cover')})
        if coverdiv:
            cover = BASE_URL + coverdiv.find("img")['src']
    filtres['content']['cover'] = cover

    plot = ""
    if cartes:
        plot = ""
    else:
        plot = " (vide)"

    for saison in saisons:
        newItem = {
            'genreId': 2,
            'nom': u(saison.getText() + plot),
            'resume': "Voir les épisodes de la " + u(saison.getText()),
            'image': "DefaultFolder.png",
            'url': saison['href'],
            'filtres': parse.getCopy(filtres)
        }

        newItem['filtres']['content']['url'] = correctEmissionPageURL(
            saison['href'])
        newItem['filtres']['content']['cover'] = cover

        liste.append(newItem)

        #newItem = {   'genreId': i,
        #              'nom': "Capsules",
        #              'resume': "",
        #              'image' : None,
        #              'url' : "",
        #              'sourceUrl' : "",
        #              'filtres' : parse.getCopy(filtres)
        #          }
        #
        #liste.append(newItem)

    for item in liste:
        item['isDir'] = True
        item['forceSort'] = False
        item['nom'] = urllib2.unquote(item['nom'])
        #item['url'] = item['url'] or None
        item['image'] = item['image'] or xbmcaddon.Addon().getAddonInfo(
            'path') + '/icon.png'
        item['fanart'] = filtres['content'][
            'cover']  #cover #xbmcaddon.Addon().getAddonInfo('path')+'/fanart.jpg'
        #item['filtres'] = parse.getCopy(filtres)
        item['filtres']['content']['genreId'] = item['genreId']
        #item['filtres']['content']['cover'] = cover

    if clip:
        for c in clip:
            cartes = c.findAll("div", {"class": "card__thumb"})
            log("--cartes--")
            #log(cartes)

            liste = liste + listerEqualiser(cartes, filtres)
    #else:
    #    newItem = {   'genreId': i,
    #                  'nom': "Aucun contenu",
    #                  'resume': "Désolé",
    #                  'image' : None,
    #                  'url' : "",
    #                  'sourceUrl' : "",
    #                  'filtres' : parse.getCopy(filtres)
    #              }
    #
    #    liste.append(newItem)
    return liste
Exemplo n.º 12
0
def listerEqualiser(cartes, filtres):
    liste = []
    for carte in cartes:
        carte = carte.parent
        #log(u(carte.getText()))
        #log(carte.findAll("img")[0]['src'])
        #log("------------------------------")

        duration = -1
        durationDiv = carte.find('ul', {"class": 'card__meta'})
        if durationDiv:
            duration = durationDiv.find('li').getText()
            try:
                duration = time.strptime(duration, '%M m %S s')
            except:
                try:
                    duration = time.strptime(duration, '%H H %M m')
                except:
                    duration = -1
            duration = datetime.timedelta(
                hours=duration.tm_hour,
                minutes=duration.tm_min,
                seconds=duration.tm_sec).total_seconds()

        newItem = {
            'genreId':
            1,
            'nom':
            u(carte.find("div", {
                "class": "card__body"
            }).find("a").getText()),
            'resume':
            u(carte.find("div", {
                "class": "card__typography"
            }).getText()),
            'image':
            BASE_URL + carte.findAll("img")[0]['src'],
            'url':
            correctEmissionPageURL(carte.findAll("a")[0]['href']),
            'sourceUrl':
            correctEmissionPageURL(carte.findAll("a")[0]['href']),
            'duree':
            duration,
            'filtres':
            parse.getCopy(filtres)
        }

        newItem['filtres']['content']['url'] = correctEmissionPageURL(
            carte.findAll("a")[0]['href'])

        liste.append(newItem)

    for item in liste:
        #log("--url--")
        #log(correctEmissionPageURL(carte.findAll("a")[0]['href']))

        item['isDir'] = False
        item['forceSort'] = False
        item['nom'] = urllib2.unquote(item['nom'])
        #item['url'] = item['url'] or None
        #item['image'] = item['image'] or xbmcaddon.Addon().getAddonInfo('path')+'/icon.png'
        item['fanart'] = filtres['content']['cover']
        #item['filtres'] = parse.getCopy(filtres)
        item['filtres']['content']['genreId'] = item['genreId']
        item[LABEL] = None  # nomBloc
        item['categoryType'] = None  #episode['categoryType']
        item['url'] = None  #episode['permalink']
        #item['image'] = None #getThumbnails(episode)
        item['genreId'] = ''
        item['nomComplet'] = item['nom']  #episode['view']['title']
        #item['resume'] =None # episode['view']['description']
        item[SEASON] = None  #'Saison ' + str(episode['seasonNo'])
        #item['duree'] = 300 #None #episode['duration']/1000

        item['seasonNo'] = None  #episode['seasonNo']
        item['episodeNo'] = None  #episode['episodeNo']
        item['startDate'] = None  #episode['startDate']
        item['endDate'] = None  #episode['endDate']
        item['endDateTxt'] = None  #episode['view']['endDate']

        item['streamInfo'] = None  #episode['streamInfo']

        item['nomDuShow'] = None  #mainShowName

        #item['sourceUrl'] = correctEmissionPageURL(carte.findAll("a")[0]['href']) #"55" #episode['streamInfo']['sourceId']

        item['url'] = correctEmissionPageURL(
            carte.findAll("a")[0]['href'])  #episode['streamInfo']['sourceId']

        item[EPISODE] = None  #'Episode ' + str(episode['episodeNo']).zfill(2)
        #item['fanart'] = None #fanart_url
        #item['nom'] = ''
    return liste