Jamspell是一种出色的拼写检查算法,该算法允许在使用特定模型之前对其进行训练。我在Windows上运行时遇到了一些麻烦。在Linux上,它工作正常。
在Windows上进行安装的过程有些繁琐。首先,您必须安装Swig,也需要安装Microsoft Visual Studios build tools。建议在2015年使用,但2017年也可以使用。
这是
之前的先决条件 pip install jamspell
具有以下状态。
Collecting jamspell
Using cached https://files.pythonhosted.org/packages/5a/16/0a808e926a835604007066085cb2183b337694a06240a99945b31fa14f27/jamspell-0.0.11.tar.gz
Installing collected packages: jamspell
Running setup.py install for jamspell ... done
Could not find .egg-info directory in install record for jamspell from https://files.pythonhosted.org/packages/5a/16/0a808e926a835604007066085cb2183b337694a06240a99945b31fa14f27/jamspell-0.0.11.tar.
gz#sha256=6dcaf1ae631af6c0904f9ba016bf2404e930237eb73e4d471ee92a77327af8f1
Successfully installed jamspell
将其导入代码后,可以看出,使用此模块无法加载在linux上训练的任何模型。代码被无限地卡在
中
corrector = jamspell.TSpellCorrector()
corrector.LoadLangModel("en.bin")
但是,通过实验发现,在Windows上训练的任何模型都可以加载到Windows中。但是,该模型尽管提供了建议,但无法进行任何更正。
示例
corrector.FixFragment("appel")
appel
corrector.GetCandidates("An apple a day keeps the doctor away".split(), 1)
('apple', 'apples', 'appln', 'apply', 'pple', 'appe', 'appel', 'appli', 'applie', 'ample', 'appl', 'appre')
corrector.FixFragment("sherluck")
sherluck
这次尝试没有成功,我尝试检查为Jamspell安装的python文件,只有以下文件存在
__ pycache __,EGG-INFO,_jamspell.cp37-win_amd64.pyd,_jamspell.py,jamspell.py
接下来,我尝试查看github中的文件,其中有jamspell.py文件,其中仅包含有关python 2的信息。
看到没有提及Python 3,我决定重试python2。为此,我必须安装Microsoft Visual Studios C++ Compiler for Python 2。
之后,再次尝试通过pip安装给我以下错误消息
error: command 'C:\\Users\\Saurav\\AppData\\Local\\Programs\\Common\\Microsoft\\Visual C++ for Python\\9.0\\VC\\Bin\\amd64\\cl.exe' failed with exit status 2
下一步我要做什么?