Pyenchant 弄乱了外来字符,拼写检查失败。我的女朋友是德国人,所以“häßlich”这个词是一个真正的德语单词,我也使用不同的拼写检查服务检查了这个词。
脚本文件编码为 ANSI 为 UTF-8。我也尝试将单词编码和解码为不同类型的字符编码。
#!/usr/bin/python
# -*- coding: utf-8 -*-
# Python bindings for the enchant spellcheck
import enchant
# Enchant dictionary
enchantdict = enchant.Dict("de_DE")
# Define german word for "ugly"
word = "häßlich"
# Print the original word and the spellchecked version of it
print word, "=", enchantdict.check(word)
输出如下:h├ñ├ƒlich = False
此外,如果我将脚本编码更改为纯 ANSI,这就是我得到的:
hõ¯lich = ** (python.exe:1096): CRITICAL **: enchant_dict_check: assertion `g_utf8_validate(word, len, NULL)' failed
Traceback (most recent call last):
File "C:\Temp\koe.py", line 14, in <module>
print word, "=", enchantdict.check(word)
File "C:\Python27\lib\site-packages\enchant\__init__.py", line 577, in check
self._raise_error()
File "C:\Python27\lib\site-packages\enchant\__init__.py", line 551, in _raise_
error
raise eclass(default)
enchant.errors.Error: Unspecified Error
我正在使用:pyenchant-1.6.5.win32.exe python-2.7.3.msi Windows 7
...如果您有更好的拼写检查器,请告诉我,我会测试它:)