Progetto:Trascrizioni/Precaricamento OCR

Da Wikisource.
Jump to navigation Jump to search

Precaricamento per capitoli: uploader6.py[modifica]

Lo script predispone il codice delle pagine ns0 (pagina principale e sottopagine) completi di Intestazione/IncludiIntestazione e del testo delle pagine associato al codice split, tratto dallo strato OCR del file djvu e pre-elaborato. Dopo eventuale modifica manuale del testo, l'esecuzione dello split popola le pagine Pagina con il testo e sostituisce il testo delle pagine in ns0 con il tag pages.


Lo script uploader6.py:

  • riceve i sueguenti parametri:
    • nome base del file djvu, obbligatorio;
    • test, default False, opzionale;
    • aggiustaParagrafi, default False, opzionale;
    • soloPagina, default None, opzionale.

Richiede:

  • pagelist e campo Sommario ben compilati, obbligatorio;
  • memoRegex e Schemi RigaIntestazione in Discussioni indice, opzionali.

Esegue:

  • download una copia del file djvu da Commons, se assente nella directory locale;
  • lettura, preOCR, postOCR delle pagine del file djvu;
  • calcolo e aggiunta di RigaIntestazione e applicazione del postOCR generico + memoRegex;
  • calcolo del codice split;
  • costruzione di tutte le pagine ns0 in Sommario (soloPagina=None) o delle sole sottopagine con base soloPagina;
  • scrittura del testo nelle sottopagine ns0.

Si procede manualmente:

  • modificando eventualmente il testo in ns0, sottopagina per sottopagina;
  • infine attivando lo split che "travasa" il testo da ns0 a nsPagina e lo sostituisce con il tag Pages, compresi i parametri fromsection e tosection se le cose sono state fatte bene.

Precaricamento per pagine: uploader7.py[modifica]

Lo script, pagina per pagina, estrae il testo OCR dal file djvu, lo pre-elabora e lo scrive nelle pagine nsPagina. Al termine del caricamento crea tutte le pagine ns0, complete di Intestazione/IncludiIntestazione e di tag pages provvisorio. Requisiti e parametri sono sostanzialmente simili a uploader6.py tranne l'opzionale "filtraggio" delle pagine da scrivere, basato sulle pagine djvu invece che sulle pagine ns0.

In questo momento (24 giugno 2015) lo script ha circa 12 ore di vita ed è stato lanciato sulle pagine iniziali di Indice:Caterina_da_Siena_-_Epistole,_1.djvu.

Con la modifica di 2 righe del codice uploader7.py dovrebbe essere in grado di creare una lunga sequenza di sottopagine ns0 senza toccare nsPagina. Vediamo su Indice:Latini - Il Tesoro, 1, 1878.djvu... --Alex brollo (disc.) 18:45, 24 giu 2015 (CEST)
Ok, testato su più opere, il parametro soloNs0=True ottiene che lo script crei (o sovrasciva) le pagine/sottopagina in ns0 senza toccare il nsPagina. Non gestisce le section e comprende in transclusione anche la prima pagina del capitolo successivo (in modo di "vedere" in transclusione se serve o no una section per comprendere l'ultima parte del capitolo)
Il codice as it is di uploader7.py è, temporaneamente, in Utente:Alex brollo/uploader7.py.