contacaraIl tuo testo resta tuo

Testo, file e Unicode

Come contare il testo di una pagina HTML

Il codice HTML contiene più del testo letto sulla pagina: tag, attributi e talvolta script o stili. Per misurare un articolo seleziona il suo contenuto e controlla la copia risultante. Se usi un’estrazione tecnica, dichiara quale proprietà e quale area hai letto: testo del documento e testo visibile non sono sempre equivalenti.

Una pagina contiene più oggetti misurabili

Puoi voler contare il codice consegnato a un cliente, le parole di un articolo o tutti i testi visibili di una schermata. Sono tre richieste legittime, ma portano a selezioni diverse. Il sorgente può comprendere nomi di classi, indirizzi, metadati e istruzioni che non fanno parte della prosa. L’articolo può essere soltanto una piccola porzione della pagina, circondata da menu e moduli.

Prima di copiare indica il perimetro: per esempio titolo, sommario, corpo e didascalie dell’articolo, con navigazione esclusa. Non cercare il numero “della pagina” senza questa precisazione. Una testata ripetuta in dieci pagine può essere un unico elemento comune del sito, oppure entrare dieci volte se stai misurando ciò che un visitatore incontra in ciascuna schermata. L’obiettivo della misura decide il trattamento; il formato HTML, da solo, non lo decide per te.

I tag aumentano il sorgente, non la frase letta

Considera il campione originale <p>Ciao <strong>mondo</strong>!</p>. Il nostro motore, quando lo riceve come testo letterale, trova trentacinque caratteri e sei parole. I nomi dei tag entrano tra le sequenze riconosciute come parole. Il campione della sola frase Ciao mondo! restituisce undici caratteri e due parole.

Non si tratta di un test di rendering del browser: abbiamo analizzato separatamente due stringhe note. L’esempio serve a rendere controllabile il motivo dello scarto. Se stai contando la prosa, incollare il codice nell’editor non equivale a importare una pagina e leggerne il contenuto. Il sito non esegue automaticamente una pulizia semantica dei tag. Per un caso semplice puoi preparare la frase corretta a mano; per una pagina reale devi prima definire ed estrarre l’area pertinente.

Codice letterale e frase separati

Input analizzato come stringaCaratteriParoleInterpretazione
<p>Ciao <strong>mondo</strong>!</p>356Sorgente letterale, compresi i tag
Ciao mondo!112Frase preparata separatamente
Esperimento locale sul motore di conteggio, non estrazione automatica dal DOM. Per una pagina completa occorre scegliere il contenitore e controllare il testo ottenuto.

Che cosa significa textcontent

Nelle API del browser, textContent permette di leggere il testo dei nodi. La documentazione MDN avverte che può includere anche il contenuto di elementi come script e style, oltre a testo non visibile. Perciò leggere il testo dell’intero documento con questa proprietà non garantisce di ottenere soltanto l’articolo mostrato al visitatore.

Un’estrazione può comunque essere corretta se il nodo scelto è circoscritto e il progetto conosce la sua struttura. Il problema non è il nome della proprietà, ma la promessa associata al risultato. Se uno strumento dichiara “parole visibili”, deve verificare anche l’ambito e il comportamento. Quando ricevi un rapporto tecnico, chiedi quale selettore o contenitore sia stato usato. “Tutto il testo della pagina” lascia aperta la possibilità che menu, piè di pagina e contenuti accessori siano stati sommati alla parte editoriale.

L’albero di p contiene il testo Ciao, strong con mondo e il punto esclamativo; i tag letterali appartengono al sorgente, non alla frase letta.
Albero semplificato del frammento della guida. Non rappresenta l’estrazione automatica di una pagina completa. Apri l’immagine a dimensione intera

Che cosa cambia con innertext e con la copia

La proprietà innerText considera il testo reso e il suo rapporto con la visualizzazione. MDN la distingue da textContent e segnala condizioni particolari, per esempio elementi non resi o scollegati dal documento. È quindi più vicina ad alcuni usi della selezione e copia, ma non va trasformata in una garanzia universale sul contenuto di ogni schermata.

Per un controllo editoriale manuale, seleziona il corpo interessato e incollalo nel contatore. Verifica poi il testo effettivamente arrivato: un menu espanso, un pannello nascosto o una componente interattiva possono rendere la scelta dell’area meno ovvia. La copia può anche inserire separatori tra blocchi. Se il tuo obiettivo è una verifica automatica ripetuta, serve una regola di estrazione stabile e documentata. Un controllo fatto su una singola pagina non dimostra che la stessa selezione sia adatta a tutte le pagine del sito.

Le entità HTML non sono le lettere della loro notazione

Nel codice puoi trovare un riferimento come &amp; per rappresentare il segno &. Se conti il sorgente, misuri i caratteri della notazione; se conti la frase interpretata, misuri il segno risultante. Lo stesso ragionamento vale per un riferimento a uno spazio non separabile. Prima di confrontare i totali devi sapere quale rappresentazione hai consegnato al contatore.

Attenzione anche alle doppie trasformazioni: una spiegazione tecnica può mostrare letteralmente un’entità per insegnare a scriverla. Decodificarla di nuovo cancellerebbe proprio l’esempio. Non applicare quindi una sostituzione globale senza distinguere il testo dell’articolo dalle dimostrazioni di codice. Quando vedi una sequenza insolita, confrontala con la pagina e con il sorgente della stessa porzione. Il passaggio da riferimento a carattere deve avvenire una volta, nel punto appropriato, e mantenere ciò che il lettore deve realmente vedere.

Togliere i tag con una sostituzione può unire le parole

Un’operazione che cancella semplicemente tutto ciò che assomiglia a un tag può perdere il confine tra due blocchi. Due paragrafi consecutivi non diventano necessariamente una sola parola lunga. Al contrario, aggiungere uno spazio attorno a ogni tag può spezzare una parola che contiene un elemento interno per evidenziarne una parte. La struttura del documento conta più dell’aspetto delle parentesi angolari.

Anche una tabella richiede una scelta: mantenere le celle separate, conservare le righe oppure estrarre soltanto alcune colonne. Se una cifra viene accostata al nome della riga successiva, la copia può restare leggibile a prima vista e diventare ambigua per chi la riceve. Controlla perciò una transizione tra paragrafi, un elenco e una tabella. Per un processo tecnico usa un parser HTML e una convenzione esplicita per i separatori, poi verifica esempi che rappresentino le strutture effettivamente presenti.

Testi alternativi, attributi e metadati vanno inventariati

Una pagina può avere descrizioni alternative delle immagini, etichette dei controlli, titolo della scheda e descrizioni per la ricerca. Questi testi possono far parte di una consegna di scrittura web pur non comparendo tutti nel corpo selezionato. Non considerarli automaticamente inclusi nel conteggio dell’articolo, e non trattarli come trascurabili soltanto perché occupano attributi o altre aree del documento.

Per un preventivo separa il corpo dai testi accessori in un elenco di campi. Conta ogni campo secondo l’unità richiesta e segna dove verrà usato. Se la stessa frase è ripetuta in due luoghi, decidi se il lavoro riguarda due istanze o una stringa riutilizzata. Questa distinzione è utile anche nella revisione: una correzione al corpo non aggiorna necessariamente il testo alternativo o la descrizione. Il rapporto dovrebbe permettere di ritrovare l’elemento concreto, senza chiedere al lettore di dedurlo dal totale generale.

Controllare una pagina che cambia stato

Una pagina dinamica può mostrare più testo dopo un clic, una ricerca o il caricamento di dati. Definisci lo stato che devi misurare: per esempio scheda iniziale con pannelli chiusi, oppure tutte le risposte di una sezione aperte. Se il contenuto cambia in base alla lingua o a un filtro, conserva anche quella scelta. Il numero non descrive una risorsa astratta immutabile: descrive una selezione in una condizione precisa.

Quando il totale sembra troppo alto, cerca prima materiale estraneo al corpo: voci di navigazione, suggerimenti, ripetizioni o messaggi tecnici. Quando sembra troppo basso, controlla didascalie, riquadri e testo caricato successivamente. Riporta poi il contenuto corretto nella copia misurata e ripeti il calcolo. La guida su incollare senza formattazione spiega quali informazioni si perdono nel trasferimento e quali caratteri possono invece restare.

Fonti e verifiche

Controlli specifici di questa guida
  • Eseguito analyze() su sorgente HTML letterale e frase isolata: 35/6 e 11/2.
  • Aperte le documentazioni di textContent e innerText per verificare limiti distinti.
  • HTML degli esempi escapato per evitare che il sito interpreti i tag dimostrativi.

Criteri editoriali, fonti e processo di revisione

Passa dal metodo al tuo testo.

Apri lo strumento e controlla il risultato con i criteri appena descritti.

Apri lo strumento