[Python] Creare un file HTML scrivendo del codice [ERA]: Re: Evitare le importazioni circolari

Lorenzo Sutton lorenzofsutton a gmail.com
Mar 31 Mar 2015 17:46:37 CEST


On 29/03/2015 16:34, Francesco Maida wrote:
> Siccome ho un po di tempo libero volevo provare a scrivere una libreria
> in Python che consenta di creare un file HTML scrivendo del codice.

Tipo E-Factory nella libreria lxml?

http://lxml.de/lxmlhtml.html#creating-html-with-the-e-factory

Lorenzo.

> Allora ho creato un package con una classe che gestisce il documento
> HTML; a sua volta la classe richiama delle altre sottoclassi che
> gestiscono i vari elementi che possono essere inseriti in un documento
> HTML: i DIV, le immagini, e altre cose simili.
>
> Qual'č il problema? Che per scrivere decentemente l'output su di un file
> di testo vorrei poter indentare per bene il codice HTML. Per farlo mi
> sono tenuto una variabile statica nella classe Documento che mi ricorda
> quanti spazi di tabulazione devo inserire prima di scrivere ogni riga
> del codice. Ogni sottoclasse (che gestisce i Div o le immagini) fa
> riferimento a questa variabile per sapere quante tabulazioni deve
> inserire prima di scrivere il testo.
> Mi rendo conto che detto cosė non si capisce una fava, quindi provo a
> fare un'esempio pratico:
>
> Se devo scrivere in un file questo codice HTML:
>
> <body><div>Ciao mondo</div></body>
>
> ho bisogno di indentare il codice cosė (a sinistra il numero di
> tabulazioni):
>
> (0 TAB) <body>
> (1 TAB) <div>
> (2 TAB) Ciao mondo
> (1 TAB) </div>
> (0) TAB) </body>
>
>
>
> Ad esempio questo č il codice che uso per la classe Documento. Quando
> voglio creare un documento HTML, creo un istanza della classe e gli
> passo il nome del file da creare (non ci sono controlli degli errori al
> momento)
>
> https://gist.github.com/fmaida/8c9707012d7b67296596
>
> Ad esempio quando voglio creare un div nella classe documento, viene
> richiamata una classe come questa:
>
> https://gist.github.com/fmaida/256154d8d7d1ec053bff
>
> Oppure questa:
>
> https://gist.github.com/fmaida/95f412d7cf96c4d79e53
>
>
>
> So di non essere bravo a spiegare le cose, ma spero che in un modo o
> nell'altro riuscirai a capire cosa intendo
>
>
> _______________________________________________
> Python mailing list
> Python a lists.python.it
> http://lists.python.it/mailman/listinfo/python
>


Maggiori informazioni sulla lista Python