J'essaye de télécharger des articles utilisant Article
de newspaper
, et essayant de tokenize les mots using nltk
word_tokenizer
. Le problème est que, lorsque j'essaie d'imprimer le texte de l'article analysé, certains de ces articles ont des guillemets spéciaux comme “
, ”
, ’
, qui ne sont pas filtrés par le tokenizer, comme il le ferait normalement '
et "
.Enlever des guillemets spéciaux et d'autres caractères
Existe-t-il un moyen de remplacer ces guillemets spéciaux par des guillemets normaux, ou mieux de supprimer tous les caractères spéciaux que le jeton peut manquer?
J'ai essayé d'enlever ces caractères spéciaux en les mentionnant explicitement dans le code, mais cela me donne l'erreur Non-UTF-8 code starting with '\x92'
.
Merci! Cela fonctionne parfaitement. Est-il possible de supprimer complètement les mots avec ces caractères non utf-8? Parce que pour mon application spécifique, je n'ai pas vraiment besoin de caractères spéciaux ou de ponctuation, juste les mots utf-8 de l'article. –
Vous êtes les bienvenus. L'utilisation de 'unidecode' devrait remplacer tous les caractères non utf-8, mais garder les signes de ponctuation, etc. Si vous voulez garder des lettres (et des espaces) seulement, utilisez une expression régulière:' text = re.sub ('[^ A- Za-z] ',' ', texte) '. Et si vous voulez vous débarrasser de mots contenant un caractère non-utf8, utilisez des expressions régulières plus complexes! – Archeo