PyEnchant: контрольный блок текста с личным списком слов

Итак, PyEnchant позволяет вам определить личный список слов правильно записанных слов в дополнение к языковому словарю:

d2 = enchant.DictWithPWL("en_US","mywords.txt")

Однако результирующая проверка d2 имеет класс Dict, который может использоваться только для проверки одного слова, например:

>>> d.check("Hello")
True

Класс SpellChecker позволяет проверять орфографию блока текста. Тем не менее, я не могу понять, как указать личный список слов, как с Dict. Это не поддерживаемая функция? Я бы хотел, чтобы spellcheck блок текста против en_US плюс мой личный список слов. Любые идеи?

Ответ 1

Первым аргументом инициализатора SpellChecker может быть имя языка или словарь зачарования:

from enchant import DictWithPWL
from enchant.checker import SpellChecker

my_dict = DictWithPWL("en_US", "mywords.txt")
my_checker = SpellChecker(my_dict)

my_checker.set_text("This is sme sample txt with erors.")
for error in my_checker:
    print "ERROR:", error.word

Документация не совсем понятна, но доступен код:)