Script generazione Lista Canali
#!/usr/bin/env python
# -*- encoding: utf-8 -*-
import sys
import re
from cStringIO import StringIO

tbl_fwtv = """
+ Canali Nazionali
1,RAI Uno
2,RAI Due
3,RAI Tre
4,Rete 4
5,Canale 5
6,Italia 1
7,La7
8,MTV

+ Intrattenimento
9,RAI Click Fiction Live,,,l'appuntamento quotidiano con la fiction; segui l'orario di programmazione delle tue fiction preferite: puoi vederle in modalità lineare, oppure scegliere di tornare alla modalità on-demand.
10,RAI Click Fiction,,V,un'ampia offerta di serie televisive, soap opera e sceneggiati del presente e del passato, con tutte le fiction più amate della stagione tra cui **Montalbano**, **Sospetti**, **Un medico in famiglia**, **Incantesimo**, **Un posto al sole** e tante altre.
11,ONtv Fiction,,V,se hai perso qualche puntata della tua serie TV preferita, ora puoi rivederla quando vuoi. Tante fiction tra cui **Elisa di Rivombrosa**, **Distretto di polizia**, **Carabinieri**, **R.I.S.** e i telefilm più amati come **Magnum P.I.**, **A-Team** e in più i Film per la TV, **Ultimo**, **Paolo Borsellino**, **Padre Pio** e ancora sitcom e divertenti cortometraggi ti aspettano con tante storie per offrirti in ogni momento quello che fa per te.
13,ONtv Show,,V,il meglio dei programmi comici e degli show televisivi tra cui **Markette**, **Le invasioni barbariche**, **Colorado Cafè** e, in più, tanti suggerimenti sulla moda, i locali, le ultime tendenze e gli eventi delle principali città italiane.
14,RAI Click Spettacolo,,V,i varietà storici della RAI, i reality della stagione, gli spettacoli comici più divertenti tra cui **Che tempo fa**, **Ottavo Nano**, **Avanzi**, **Totò** e inoltre una ricca offerta di musica e teatro.
20,Warner TV,,V
25,Lost

+ Film
30,ONtv Film Novità
31,ONtv Film,,V$,oltre 700 titoli: film Megahit, prime visioni, grandi classici e film per adulti.
32,ONtv Film HD,,HV$,i migliori film con qualità [[[tv-info:HD]]].
33,ONtv Film Cineclub,,V
39,Area Adulti,,V

+ Azione e scoperte
41,ONtv Sapere,,V,tanti documentari di **Discovery**, dell'**Istituto Luce** e **TSI** dedicati alla scienza, alla natura, ai viaggi e ai grandi misteri, ma anche ai programmi di attualità, gustose ricette e i consigli per restare sempre in forma;
43,RAI Click Culture,,V,il canale della cultura, con programmi di storia, scienze, misteri, arte e letture. Inoltre documentari e reportage sui viaggi.
46,ESPN Classic On Demand,,V,Il canale dedicato agli appassionati di sport diventa anche on-demand.
47,ESPN Classic,,,per i veri appassionati della storia dello sport riportato nei suoi momenti più celebri, con gli eventi sportivi che hanno fatto la storia e i racconti dei campioni che ne hanno fatto parte.

+ Ragazzi
50,ONtv Ragazzi Novità
51,ONtv Ragazzi,,V,con i film d'animazione, documentari, tanti cartoni e serie TV tra cui **L'Ape Maia**, **Anna dai capelli rossi**, **Heidi**, i **Teletubbies** e tanti altri divertenti manga con le avventure dei personaggi più amati dei bambini.
52,RAI Click Junior,,V,un mondo fantastico, con cartoni animati come **La Pimpa**, **Lupo Alberto**, **Winx Club**, **Lo zecchino d'oro**, programmi in lingua inglese, telefilm per ragazzi e divertenti giochi per tutte le età!
55,Cartoon Network On Demand,,V,Il canale per cui i ragazzi vanno pazzi diventa on-demand. Solo i più bei cartoni animati con tutti i personaggi più noti, 24 ore al giorno.
56,Cartoon Network,,,il canale che trasmette solo cartoni animati 24 ore al giorno, tutti i giorni della settimana, tutto l'anno. Non è solo un canale per ragazzi, ma è un canale di cui i ragazzi vanno pazzi: il divertimento è assicurato assieme ai personaggi più noti.
67,FastKids
68,FastGame
69,Disney's Magic English
,Mike's Quiz Zone

+ Music and Extra
71,i-Concerts,,V
72,ONtv Music,,V,il nuovo modo di vivere la musica con tanti videoclip da vedere ogni volta che vuoi, a scelta tra il **pop** e la **dance**, il **rock** e il **R&B**, la **musica latina**, il **jazz**, e la **classica**. E in più, i 20 migliori video del momento, le novità e gli speciali su artisti sempre diversi.
8,MTV
74,All Music,,,l'emittente del Gruppo Espresso che ha, come suoi tratti distintivi, la varietà delle scelte musicali, il contatto diretto con i telespettatori e l'italianità del progetto editoriale. Punto di forza del palinsesto è **Deejay chiama Italia**, divertente programma condotto da Linus e Savino, in onda tutte le mattine e che ha fatto la storia di Radio Deejay.
75,Music Box,,,un palinsesto interattivo costruito in tempo reale anche grazie al tuo contributo, con più di 20.000 filmati musicali in oltre 15 lingue: tanti videoclip, interviste e i backstage più votati dal pubblico attraverso il telecomando del proprio televisore durante la visione.

+ News and Sport
81,RAI Click News,,V,le videonotizie di **Rai News 24**, l'ultimo TG appena andato in onda, le trasmissioni di approfondimento e la possibilità di partecipare a sondaggi d'opinione.
82,RAI News 24,,,il canale che offre l'informazione RAI 24 ore su 24. E' possibile leggere notizie, ascoltare gli ultimi telegiornali, oltre ad interessanti rubriche e magazine.
83,Bloomberg,,,il canale dedicato all'informazione economico-finanziaria offre una panoramica generale della giornata sui mercati, con le notizie più importanti, le previsioni sui risultati delle società, con i commenti di analisti da tutto il mondo.
86,Telelombardia
90,Eventi Calcio & Sport,,V
91,RAI Click Sport,,V
92,RAI Click Sport Più
96,CNN International,,,il canale per eccellenza dedicato all'informazione di tutto il mondo, diffuso in oltre 200 Paesi e noto per essere fonte di informazione sui più importanti avvenimenti, con notiziari che vanno in onda in tempo reale.
97,BBC World,,,una programmazione per chi è alla ricerca di notizie sul mondo della finanza, dell'economia e dei mercati di tutto il mondo. Inoltre, approfondimenti sulla tecnologia e sugli affari in generale.

+ Altro
,Guida TV
,VideoREC,*
,ReplayTV,*
,MyMediaCenter,*
,Navigazione Internet
0,Novità in Fastweb TV
"""

tbl_sky = """
+ SKY Mondo Intrattenimento
109,SKY Vivo,,,I maggiori reality del momento in versione integrale e i nuovi format internazionali.
110,FOX,,,Tutti i titoli delle grandi serie TV di ogni genere: azione, commedia, fantascienza e mistero.
111,FOX Life,,,L'intrattenimento in rosa, con un occhio di riguardo al pubblico femminile: le serie TV di successo e le storie di vita più appassionanti.
112,FOX Crime,,,Serie poliziesche, gialli, noir e documentari in un canale interamente dedicato al mondo del crimine.
113,FX,,,Tanti programmi pensati per lui: le serie TV, i film cult della comicità italiana anni '70 e '80 e scatenati show con tante belle donne.
115,Comedy Central,,,La comicità originale e irriverente con personaggi nuovi, volti noti, serie TV e programmi controcorrente.
116,SKY Show,,,Battute, gag e humour: il buonumore in forma di sit-com, serie TV e tanti show italiani e internazionali tutti da ridere.
118,Discovery Real Time,,,Il tempo libero in tutte le sue varianti: stili di vita, relazioni, casa, viaggi, benessere, moda, tavola e bellezza.
120,Raisat Extra,,,Una extra-ordinary television per chi cerca il meglio della TV che fa opinione.
122,Raisat Premium,,,È la vetrina della migliore produzione di fiction made in Italy, con le serie e miniserie di successo della RAI.
132,Fantasy,,,Magia, avventura, mistero con i generi più diversi: commedie nere, horror e thriller.
134,AXN,,,La destinazione perfetta per chi cerca emozioni forti, intrattenimento mozzafiato e grandi film d'azione.
136,Hallmark,,,Fiction per tutti i gusti, film, serie e miniserie con un mix unico di dramma, amore e avventura.
138,BBC Prime,,,Il meglio per la famiglia: i documentari, i programmi didattici in lingua inglese, le sit-com, i programmi di lifestyle e le soap opera.
140,Jimmy,,,La vetrina della produzione indipendente: un canale dirompente e innovativo che mescola i miti del passato e quelli di un futuro prossimo.
142,Cult,,,Serie d'autore, cinema indipendente e documentari: dallo sguardo della gente a quello dell'artista.
146,GXT,,,Il wrestling, i programmi più pazzi della TV, le sfide del Guinness World Record, l'ironia più scatenata: tutto a misura di teenager.
148,Cooltoon,,,Il canale interamente dedicato ai cult dell'animazione giapponese tanto amati dai ragazzi italiani negli anni '70 e '80.

+ SKY Mondo Bambini
602,Raisat YOYO,,,Il canale per i più piccini con le migliori serie animate e produzioni originali italiane e europee.
603,Jim Jam,,,Dedicato ai bambini fino ai 6 anni con programmi sicuri pensati appositamente per loro.
604,Nickelodeon,,,Il canale che insegna senza annoiare perchè dice ai bambini proprio quello che vogliono sapere.
606,Cartoon Network,,,Il primo canale che trasmette solo cartoni animati, con la più grande offerta al mondo di cartoon.
608,Boomerang,,,I personaggi più amati della storia dei cartoon e gli eroi senza età che sono diventati vere icone.
610,Raisat Smash,,,Il canale a misura di teenager: dal fantasy ai videogiochi, dai film per ragazzi italiani e stranieri alle manifestazioni più attese.
611,Playhouse Disney,,,Interamente dedicato ai bambini in età prescolare per aiutarli ad apprendere attraverso il gioco.
612,Disney Channel,,,Il grande mondo Disney: i film di successo, i classici senza tempo, le serie TV, i cartoni animati e le ultime novità.
614,Toon Disney,,,La migliore animazione Disney: dai personaggi più classici alle serie più nuove.
616,Jetix,,,Divertimento allo stato puro: energia, avventure, risate e mistero.

+ SKY Mondo Musica & Teens
704,MTV Hits,,,Il canale con le star e le hits del momento: il meglio della musica internazionale in circolazione.
706,MTV Brand New,,,La musica alternativa dal garage-rock all'elettronica. I nuovi trend, gli artisti emergenti e le band che fanno tendenza.
712,Video Italia,,,Musica italiana con videoclip, concerti live, interviste, aggiornamenti e grandi eventi.
714,Deejay TV,,,La formula televisiva della popolare Radio Deejay, la radio più seguita dai ragazzi di ogni età.
716,Matchmusic,,,Tutta la musica inglese ed europea con artisti di grosso calibro, per creare un'immensa compilation di musica non stop.
717,Music Box,,,L'unico canale musicale interattivo 24 ore su 24 diretto da Oliviero Toscani. Provocazione e originalità garantite.
718,Rock TV,,,Programmi in diretta, news e curiosità dal mondo del rock.

+ SKY Mondo Documentari
401,Discovery Channel,,,Il canale di chi vuole scoprire il mondo che ci circonda e soddisfare ogni curiosità.
402,National Geographic Channel,,,Scienza, tecnologia, attualità, crime investigation e archeologia: il meglio dei documentari con una programmazione di altissima qualità.
404,Nat Geo Adventure,,,Le sfide più estreme, gli sport più spericolati, i viaggi in giro per il mondo: avventura ed esplorazione a 360 gradi.
407,History Channel,,,Per rivivere la storia ed entrare in contatto con le vicende e i personaggi del passato.
410,Raisat Gambero Rosso,,,Il canale dedicato alla grande cucina italiana e internazionale, dalla buona tavola al buon vino.
414,Marcopolo,,,Alla scoperta dei mille volti dell'Italia e degli angoli più suggestivi del mondo.
416,Alice,,,Ricette e tanti utili consigli per vivere al meglio i sapori e le tradizioni della nostra tavola.
418,Leonardo,,,Arredamento, architettura, giardinaggio, design e lifestyle: il canale per vivere al meglio la passione per la casa.
421,Animal Planet,,,Documentari, reportage, serie: il canale dove gli animali sono protagonisti assoluti.
422,Discovery Science,,,I segreti e i misteri dell'universo, le tecnologie più all'avanguardia e molto altro ancora: la scienza come non si era mai vista.
426,Travel & Living,,,Viaggi, cibo, design ed arredamento. È il canale che fa sognare mete lontane, cibi esotici, hotel da sogno e scenari avventurosi.

+ SKY Mondo News
500,SKY TG24,,,È il canale di sole notizie, 24 ore su 24, per avere gli ultimi aggiornamenti dall'Italia e dal mondo.
501,SKY Meteo24,,,Il primo canale televisivo via satellite interamente dedicato alle previsioni del tempo.
504,Bloomberg,,,Le news economico-finanziarie 24 ore non stop.
512,SKY News,,,Il canale d'informazione più popolare nel Regno Unito, con le notizie più veloci.
516,CNN,,,L'informazione leader a livello mondiale con una rete di oltre 200 paesi nel mondo.
218,Nuvolari,,,La televisione dei motori: auto e moto, ma anche nautica e aeronautica. Dai grandi personaggi alle ultime tendenze.
220,SNAI,,,Per gli appassionati al mondo dei cavalli: l'ippica 24 ore al giorno in collaborazione con U.N.I.R.E., i Gran Premi, le Tris e le corse del giorno.
214,Yacht&Sail,,,Sport, mercato, lifestyle e turismo ma anche news e test a bordo di imbarcazioni, a vela e motore, effettuati da giornalisti esperti del settore.

+ SKY Sport
200,SKY Sport 24,,,Il **nuovo canale** di **notizie sportive 24 ore su 24**: 150 professionisti dell'informazione sportiva per una serie continua di edizioni aggiornate in tempo reale con collegamenti in diretta, notizie, anteprime, risultati, statistiche, interviste esclusive, analisi e commenti qualificati.
201,SKY Sport 1,,,Anticipi serali, posticipi, una diretta della domenica pomeriggio del Campionato di Serie A, la UEFA Champions League e il meglio del Calcio Internazionale.
202,SKY Sport 2,,,Gli eventi sportivi più importanti in diretta e in esclusiva: dal volley al basket, dal rugby al football americano.
203,SKY Sport 3,,,Dà spazio ai grandi eventi con i principali incontri dei Campionati Europei e le sfide più attese della UEFA.
204,SKY Sport Extra,,,Il canale che trasmette gli eventi che non hanno durata fissa: come il tennis e il grande golf.
205,SKY Sport Supercalcio,,,Il martedì e mercoledì di coppa dalle 20.45 alle 24 trasmette in diretta il meglio del calcio internazionale con Diretta Gol Champions League.
206,SKY Sport 16:9,,,Le partite più emozionanti di calcio e di basket in formato 16:9. Champions League.
210,Eurosport,,,Tennis, motociclismo, pallavolo, calcio, golf, biliardo e molto altro: dalle discipline più conosciute a quelle di nicchia, tutto lo sport che vuoi in un unico canale.
211,Eurosport 2,,,Tennis, motociclismo, pallavolo, calcio, golf, biliardo e molto altro: dalle discipline più conosciute a quelle di nicchia, tutto lo sport che vuoi in un unico canale.
213,NASN,,,Il canale televisivo europeo in lingua inglese interamente dedicato ai principali sport di squadra Nord Americani.

+ SKY Calcio
251,SKY Calcio 1,,,14 canali per seguire tutte le tue partite, trasmesse in diretta.
252,SKY Calcio 2
253,SKY Calcio 3
254,SKY Calcio 4
255,SKY Calcio 5
256,SKY Calcio 6
257,SKY Calcio 7
258,SKY Calcio 8
259,SKY Calcio 9
260,SKY Calcio 10
261,SKY Calcio 11
262,SKY Calcio 12
263,SKY Calcio 13
264,SKY Calcio 14
205,SKY SuperCalcio,,,Ogni domenica pomeriggio ospita Diretta Gol Serie A, per seguire in diretta contemporaneamente le immagini e i gol da tutti i campi della Serie A.

+ SKY Cinema
301,SKY Cinema 1,,,Le grandi Prime TV della stagione con tutti gli appuntamenti per guardare i più fortunati successi degli ultimi mesi.
302,SKY Cinema 2,,,Ripropone, un'ora dopo, la stessa programmazione di SKY Cinema 1: per non perdersi neanche un minuto dei grandi successi!
303,SKY Cinema 3,,,Trasmette film come controproposta a SKY Cinema 1: dai grandi successi del panorama internazionale alle commedie più esilaranti.
306,SKY Cinema Hits,,,Ogni giorno, solo i più grandi successi: i film da incasso stellare, i divi di Hollywood e poi le grandi risate del cinema italiano "eccezzziunale".
309,SKY Cinema MAX,,,È il canale per chi ama le emozioni forti: action movies, thriller, film dell'orrore, spionaggio, gialli, spy-story, film erotici e cicli a tema.
312,SKY Cinema Mania,,I Lungometraggi d'autore, cult movies, director's cut, cinematografie internazionali e produzioni indipendenti.
315,SKY Cinema Classics,,,Presenta i capolavori cinematografici che hanno fatto la storia: dalle pellicole in bianco e nero ai capolavori degli anni Ottanta.
320,The MGM Channel,,,Il canale di grandi film, accuratamente selezionati dalla popolarissima library Metro-Goldwyn - Mayer, la più grande al mondo, da oltre 80 anni simbolo del migliore cinema di Hollywood.
322,Raisat Cinema,,,Il cinema made in Italy, senza dimenticare i successi internazionali. E in più interviste, documentari, backstage e materiale esclusivo Rai.

+ SKY Option
230,Milan Channel,,,Il canale ufficiale dei diavoli rossoneri: un palinsesto innovativo, completo, perfetto per far crescere la passione e vivere le **giornate dei tuoi Campioni**, in diretta, ogni giorno. L'unico canale che ti offre un "archivio" dell'intera storia del Milan: **partite ufficiali e amichevoli, interviste esclusive,** ritratti di Presidenti e dei campioni che hanno fatto sognare.
231,Juventus Channel,,,Una programmazione pensata in esclusiva per tutti i tifosi juventini, con tanti appuntamenti ed immagini per vivere ogni giorno le emozioni del presente e rivivere le gioie del glorioso passato bianconero. Tutte le settimane troverai gli appuntamenti dedicati all'approfondimento e all'intrattenimento, per godere da vicino le sensazioni che precedono e seguono ogni incontro. Inoltre le **conferenze stampa, le Juve News, la sintesi e gli allenamenti dei giocatori** per essere sempre aggiornati su tutto l'universo bianconero.
232,Inter Channel,,,In diretta dagli studi televisivi del Centro Sportivo di Appiano Gentile, Inter Channel ti permette di seguire in diretta **allenamenti, aggiornamenti quotidiani** e la conferenza stampa. Potrai vedere in replica le partite più belle e in occasione delle partite di Campionato e di Coppa guarderai il **collegamento dallo stadio pre e post partita e interviste esclusive ai giocatori** appena usciti dal campo. 24 ore su 24, 365 giorni all'anno, per chi è solo neroazzurro!
234,Roma Channel,,,La Voce Ufficiale della A.S.Roma che ogni giorno le emozioni giallorosse: allenamenti da Trigoria, interviste esclusive, la **conferenza stampa in diretta e partite in replica**. In più **collegamenti dallo stadio** nelle partite di Campionato e di Coppa per commentare i risultati e le interviste ai giocatori appena usciti dal campo.
234,Caccia e Pesca,,,Il canale che propone le tematiche dell'**arte venatoria**, della **pesca** e del **paesaggio italiano**, l'occasione buona per esaltare la natura e le tradizioni italiane.
728,Classica,,,Ovvero la grande musica: ogni giorno dieci blocchi tematici con il meglio dell'**opera**, dei **concerti** e della **danza**.
"""

def processTable(tbl):
    tables = {}
    intable = False

    def endtable():
        print >>s_list, "[[/table]]"
        tables[s_title] = (s_header.getvalue(), s_list.getvalue())

    for L in tbl.splitlines():
        L = L.strip()
        if not L: continue

        if L[0] == '+':
            if intable:
                endtable()
                intable = False
                s_list, s_header, s_title = None,None,None

            s_title = L[1:].strip()
            s_header = StringIO()
            s_list = StringIO()
            row = 0
            print >>s_header, '[[div class="titolo"]]'
            print >>s_header, s_title
            print >>s_header, '[[/div]]'

        else:
            if not intable:
                print >>s_list, '[[table style="width: 100%;"]]'
                intable = True

            items = L.split(",", 4)
            assert 2 <= len(items) <= 5, L
            ch = items[0]
            name = items[1]
            link = items[2] if len(items)>2 else None
            meta = items[3] if len(items)>3 else ""
            desc = items[4] if len(items)>4 else None
            icon = "-".join(filter(None, re.split(r"\W+", name))).lower() + ".png"

            row += 1
            if row&1:
                style = "background-color: #E8E8E8;"
            else:
                style = ""
            print >>s_list, '[[row]]'

            if 0: # per ora non abbiamo le immagini a dimensione decente
                print >>s_list, "[[cell]]"
                print >>s_list, '[[=image %s alt=""]]' % icon
                print >>s_list, "[[/cell]]"

            print >>s_list, '[[cell style="margin-left: 10px; padding-left: 3%%; padding-right: 5%%; %s"]]' % style
            assert not (link and desc)
            if link:
                print >>s_list, "[[[{$category}:" + name + "]]]"
            elif desc:
                print >>s_list, '[[collapsible show="%s [+]" hide="%s [-]"]]' % (name,name)
                print >>s_list, desc
                print >>s_list, '[[/collapsible]]'
            else:
                print >>s_list, name

            print >>s_list, "[[/cell]]"

            print >>s_list, '[[cell style="text-align:right; vertical-align:top; %s"]]' % style
            print >>s_list, ch
            print >>s_list, "[[/cell]]"

            print >>s_list, "[[/row]]"
            print >>s_list, ""

    endtable()
    return tables

def use_table(tables, order, double):
    print "[!--"
    print " Generata da make-lista-canali.py (include:make-lista-canali)"
    print " NON modificare a mano"
    print "--]"
    print
    print '[[table class="tv-lista-canali"]]'

    def pcell(n):
        print '[[div style="border: 1px solid black; margin: 5px"]]'
        print tables[n][0]
        print tables[n][1]
        print '[[/div]]'

    x = 0
    i = 0
    while i < len(order):
        if x%3 == 0:
            print '[[row]]'
        print '[[cell style="width: 33%; vertical-align: top"]]'
        pcell(order[i])
        if i in double:
           i += 1
           pcell(order[i])
        print '[[/cell]]'

        if x%3 == 2 or i == len(order)-1:
            print '[[/row]]'
        x += 1
        i += 1

    print '[[/table]]'

def make_fwtv():
    tables = processTable(tbl_fwtv)
    order = ["Canali Nazionali", "Azione e scoperte",  "Intrattenimento", "Film",  "Ragazzi", "Music and Extra", "News and Sport", "Altro"]
    double = [0,2]
    use_table(tables, order, double)

def make_sky():
    tables = processTable(tbl_sky)
    order =  ["SKY Mondo Intrattenimento", "SKY Mondo Bambini", "SKY Mondo Musica & Teens", "SKY Mondo Documentari", "SKY Mondo News",
              "SKY Sport", "SKY Calcio", "SKY Cinema", "SKY Option"]
    double = []
    use_table(tables, order, double)

sys.stdout = open("canali-fwtv.wiki", "w")
make_fwtv()
sys.stdout = open("canali-sky.wiki", "w")
make_sky()
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License