Sto tentando di utilizzare la libreria java boilerpipe per estrarre articoli di notizie da un insieme di siti Web. Funziona perfettamente per i testi in inglese, ma per il testo con caratteri speciali, ad esempio parole con segni di accento (história), questi caratteri speciali non vengono estratti correttamente. Penso che sia un problema di codifica.Utilizzo di boilerpipe per estrarre articoli non inglesi
Nel faq boilerpipe, dice "Se si estrae testo non inglese potrebbe essere necessario modificare alcuni parametri" e quindi fa riferimento a un paper. Non ho trovato soluzione in questo documento.
La mia domanda è, ci sono dei parametri quando si utilizza boilerpipe dove posso specificare la codifica? C'è un modo per andare in giro e ottenere il testo correttamente?
Come sto usando la libreria: (primo tentativo in base alla URL):
URL url = new URL(link);
String article = ArticleExtractor.INSTANCE.getText(url);
(secondo sul codice sorgente HTLM)
String article = ArticleExtractor.INSTANCE.getText(html_page_as_string);
Grazie per la risposta. Mi dispiace solo per aver prestato attenzione ora ma sono stato bloccato in un altro progetto. Ho provato a stampare l'encond che era impostato sulla variabile c dopo questo pezzo di codice, e il risultato era sempre ISO-8859-1. Ho anche provato a forzare la codifica ad essere UTF-8, ma non ho ottenuto risultati migliori. Il problema deve essere in una delle conversioni, in HTMLDocument, in TextDocument, ecc. Ma ho qualche problema a stampare il loro contenuto di testo. Qualche idea? Grazie ancora. –
Andrei, avevi ragione. Stavo cercando di complicare molto, ma alla fine è stata una soluzione molto semplice. Grazie ancora, mi dispiace di non poterti ancora invogliare. –