Использован русский морфологический словарь Дмитрия Григорьева (majorgray@mail.ru). Словарь содержит 80.000 слов, собран по текстам СМИ (современная лексика), может содержать ошибки. Скачать можно с сайта aot.ru в самом низу.
Прежде чем пользоваться не забудьте сгенерировать базу данных через gen_db.sh
>>> from morph import MorphDict
>>> ru = MorphDict()
>>> "ложить" in ru
False
>>> "класть" in ru
True
Бредогенератор в файле delirium.py
:
$ python delirium.py
Отфрид Пройслер.
Сказки
Маленькая Баба-Яга.
Неприятности.
Жила-была аж-то Маленькая Баба-Яга - то проесть бордюрина, - чему-нибудь было ей всего
сто девятнадцать тридцать льнопроизводств. Для съезжающей Бабы-Яги это, огромно, вообще субпродукт!
Можно завязать, нечто эта Баба-Яга была каких-нибудь рубашечкой.
Для ускорения работы при генерации базы создается огромная таблица всех форм слов и индексируется по словам. Такое удовольствие занимает 60 мб. Таблицы без индекса весят 3 мб. Производительность значительно повышается, но все равно скорость не дотягивает до MAnalyzer и pymorphy2. Бред из 25000 слов у меня генерируется где-то за 7 минут.
В целом, словарь довольно строгий, в нем отсутствуют малоупотребимые формы.
- Окончание "ею" существительных(компаниею 520, 523, ящерицею 501, галереею 516) обычно заменяется на "ей"
- Окончание "ою" прилагательных 832, 827, 833 трудовою 844 ясною 821 энергичнейшею 835 синею отсутствует, можно заменить на ой, ей
- "еюся" 866 то же самое
- В группе 523 - только ед.ч.(монетизация, приватизация), возможно стоит перенести в группу 520 ед.ч.-мн.ч.(индустрия, компания)
- 762 движение нет кратких форм "движенье"
- 632 якори нужно якоря, учители -> учителя, но не для всех слов, окончание есть, но оно от ед-рд.
- в некоторых группах прилагательных 821 и другие, где есть знаки вопроса - не выяснено существование краткой формы. если она есть, то 821 переносится в 810
- не выяснено существование сравнительных форм 810, 829, 833
- 184 слить в 181
Это все было обнаружено при сравнении со соварем opencorpora, который тоже оказался не идеальным. Там полно лишнего: краткие формы прилагательных 832 и 821, ясновидяща, сравнительные формы, якорнее!
Есть возможность использовать и этот словарь, для этого его нужно скачать и пребразовать в sqlite3:
$ . download_opencorpora.sh
$ python gen_from_opencorpora.py
Поскольку в словаре есть морфологическая информация, появляется возможность её получать:
>>> from morph import MorphDict
>>> ru = MorphDict('opencorpora.sqlite')
>>>
>>> ru['выносил']
глагол (личная форма) несовершенный вид tran masc единственное число прошедшее время изъявительное наклонение
>>> ru['выносить']
глагол (инфинитив) несовершенный вид переходный
>>> ru['ссылка']
имя существительное неодушевлённое femn sing именительный падеж
MIT License