Utente:Omino di carta/Arcadi/tools

import pandas as pd

def elabora_sonetto(testo,printa=True):
    """Elaborazione del testo di un sonetto: aggiunge tag poem, numero di riga e indenta"""
    versi = testo.split('\n')
    versi[0] = '<poem>'+versi[0]
    versi[-1] = versi[-1]+'</poem>'
    versi[4] = '{{R|5}}'+versi[4]
    versi[9] = '{{R|10}}'+versi[9]
    for i in range(14):
        if i not in [0,4,8,11]:
            versi[i] = '     ' +versi[i]
    if printa:
        print('\n'.join(versi))
    return '\n'.join(versi)

Esempio:

elabora_sonetto("""Quando il Pittore ad animar rivolto
Irene in tele al bel lavor s’accinse,
La fronte, il ciglio, il labbro, il crin distinse,
E quanto inviso ha di bellezza accolto.
Poi nel pensier di viril cuore involto
Vago formò giovine Eroe, cui cinse
D’usbergo il petto, e al vivo in un dipinse
Marte ai genio guerrier, Venere al volto.
Tratta a fin l’opra, un non so che splendea
In lei di qualità più che terrene:
Marte non era, è non d’Amor la Dea.
Ma sotto le sembianze alme, e serene,
Tra il Bello, e ’l Fiero era una mista idea
Di Venere, e di Marte; ed era Irene.""")

ritorna <poem>Quando il Pittore ad animar rivolto Irene in tele al bel lavor s’accinse, La fronte, il ciglio, il labbro, il crin distinse, E quanto inviso ha di bellezza accolto. {{R|5}}Poi nel pensier di viril cuore involto Vago formò giovine Eroe, cui cinse D’usbergo il petto, e al vivo in un dipinse Marte ai genio guerrier, Venere al volto. Tratta a fin l’opra, un non so che splendea {{R|10}}In lei di qualità più che terrene: Marte non era, è non d’Amor la Dea. Ma sotto le sembianze alme, e serene, Tra il Bello, e ’l Fiero era una mista idea Di Venere, e di Marte; ed era Irene.</poem>


Creazione testi in ns0Modifica

import pandas as pd
    
def crea_testo(arcadi_row,delta=48):
    """Crea il testo della pagina di un sonetto.
Parametri: riga del db dei testi, delta: del numero di pagina"""

    template = """{{{{Intestazione
| Nome e cognome dell'autore = {autore}
| Titolo = {titolo}
| Iniziale del titolo = {ini_titolo}
| Anno di pubblicazione = 
| Lingua originale del testo = 
| Nome e cognome del traduttore = 
| Anno di traduzione = 
| Progetto = Letteratura
| Argomento = Sonetti
| URL della versione cartacea a fronte = Indice:Zappi, Maratti - Rime I.pdf
}}}}


{{{{Raccolta|Sonetti d'alcuni arcadi più celebri}}}}


<pages index="Zappi, Maratti - Rime I.pdf" from={startpage} to={endpage} fromsection="" tosection="" />"""

    pagine = arcadi_row['pagina'].split('-')
    startpage = pagine[0]
    if len(pagine)>1:
        endpage = pagine[1]
    else:
        endpage = startpage
    
    dati_dict = {'autore': arcadi_row['Autore'],
                 'titolo': arcadi_row['Sonetto'],
                 'ini_titolo': arcadi_row['Sonetto'][0],
                 'startpage': int(startpage)+delta, 'endpage':int(endpage)+delta}
    print(template.format(**dati_dict))

Esempio per arcadi.csv vedi Utente:Omino di carta/Arcadi

arcadi=pd.read_csv(r"arcadi.csv",sep=";",header=0,encoding='cp1252')
crea_testo(arcaditot.iloc[442])

{{Intestazione | Nome e cognome dell'autore = Carlo Maria Maggi | Titolo = Lungi vedete il torbido torrente | Iniziale del titolo = L | Anno di pubblicazione = | Lingua originale del testo = | Nome e cognome del traduttore = | Anno di traduzione = | Progetto = Letteratura | Argomento = Sonetti | URL della versione cartacea a fronte = Indice:Zappi, Maratti - Rime I.pdf }} {{Raccolta|Sonetti d'alcuni arcadi più celebri}} <pages index="Zappi, Maratti - Rime I.pdf" from=298 to=298 fromsection="" tosection="" />