Corrector ortográfico en Python

Para cualquier tipo de procesamiento o análisis de texto, revisar la ortografía de la palabra es uno de los requisitos básicos. Este artículo analiza varias formas en las que puede verificar la ortografía de las palabras y también puede corregir la ortografía de la palabra respectiva.
 

Usando la biblioteca de textblob

Primero, debe instalar la biblioteca textblob usando pip en el símbolo del sistema. 

pip install textblob

También puede instalar esta biblioteca en Jupyter Notebook como: 
 

Python3

import sys
!{sys.executable} - m pip install textblob

  
Programa para corrector ortográfico – 
 

Python3

from textblob import TextBlob
 
a = "cmputr"           # incorrect spelling
print("original text: "+str(a))
 
b = TextBlob(a)
 
# prints the corrected spelling
print("corrected text: "+str(b.correct()))

Producción: 
 

original text: cmputr
corrected text: computer


Usando la biblioteca pyspellchecker

Puede instalar esta biblioteca de la siguiente manera:
Usando pip: 

pip install pyspellchecker


En Jupyter Notebook: 
 

Python3

import sys
!{sys.executable} - m pip install pyspellchecker

  
Programa de corrector ortográfico usando pyspellchecker – 
 

Python3

from spellchecker import SpellChecker
 
spell = SpellChecker()
 
# find those words that may be misspelled
misspelled = spell.unknown(["cmputr", "watr", "study", "wrte"])
 
for word in misspelled:
    # Get the one `most likely` answer
    print(spell.correction(word))
 
    # Get a list of `likely` options
    print(spell.candidates(word))

Producción: 
 

computer
{'caput', 'caputs', 'compute', 'computor', 'impute', 'computer'}
water
{'water', 'watt', 'warr', 'wart', 'war', 'wath', 'wat'}
write
{'wroe', 'arte', 'wre', 'rte', 'wrote', 'write'}


Uso de JamSpell

Para lograr la mejor calidad al hacer las correcciones ortográficas, los métodos basados ​​en diccionarios no son suficientes. Necesitas considerar la palabra entorno. JamSpell es una biblioteca de revisión ortográfica de Python basada en un modelo de lenguaje. Hace diferentes correcciones para un contexto diferente.

1) Instalar swig3

apt-get install swig3.0   # for linux
brew install swig@3       # for mac

2) Instalar jamspell

pip install jamspell

3) Descargue un modelo de idioma para su idioma

Python3

# Create a corrector
corrector = jamspell.TSpellCorrector()
 
# Load Language model -
# argument is a downloaded model file path
corrector.LoadLangModel('Downloads/en_model.bin')
 
# To fix text automatically run FixFragment:
print(corrector.FixFragment('I am the begt spell cherken!'))
 
# To get a list of possible candidates
# pass a splitted sentence, and a word position
print(corrector.GetCandidates(['i', 'am', 'the', 'begt', 'spell', 'cherken'], 3))
 
print(corrector.GetCandidates(['i', 'am', 'the', 'begt', 'spell', 'cherken'], 5))

Producción:

u'I am the best spell checker!'
(u'best', u'beat', u'belt', u'bet', u'bent')
(u'checker', u'chicken', u'checked', u'wherein', u'coherent', ...)

Publicación traducida automáticamente

Artículo escrito por mkumarchaudhary06 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *