https://github.com/pahanini/go-opencorpora-tools
opencorpora.org tools for golang
https://github.com/pahanini/go-opencorpora-tools
morphology opencorpora
Last synced: about 1 year ago
JSON representation
opencorpora.org tools for golang
- Host: GitHub
- URL: https://github.com/pahanini/go-opencorpora-tools
- Owner: pahanini
- License: mit
- Created: 2017-07-07T05:32:45.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2021-03-11T10:05:30.000Z (over 5 years ago)
- Last Synced: 2024-06-19T11:37:37.575Z (almost 2 years ago)
- Topics: morphology, opencorpora
- Language: Go
- Size: 13.7 KB
- Stars: 8
- Watchers: 2
- Forks: 2
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Библиотека работы с данными opencorpora.org
## Morph
Morph производит морфологический разбор слова на русском языке используя словарь
opencorpora.org. Перед использованием исходный словарь в формате XML должен быть конвертирован
во внутренний формат библиотеки, который позволяет уменьшить объем загружаемых
в память данных приблезительно в 15 раз и одновременно увеличить скорость работы.
Прежде чем начать работу ознакомтесь с [глоссарием](glossary.md), который большей частью взаимствован
у проекта [pymorphy2](https://github.com/kmike/pymorphy2)
Пример получения тэгов слова:
```go
package main
import (
"fmt"
"github.com/pahanini/go-opencorpora-tools"
)
func main() {
m, _ := opencorpora.LoadMorph("morph.dict")
tag, _ := m.Tag("морфология")
fmt.Println(tag)
/*
=> [[
{NOUN имя существительное}
{inan неодушевлённое}
{femn женский род}
{sing единственное число}
{nomn именительный падеж}
]]
*/
}
```
Создание файла словаря по данным opencorpora.org. Данная операция на MacBook Pro
занимает примерно 1 минуту.
```go
d := opencorpora.MorphData{}
d.ImportFromXMLFile("dict.opcorpora.xml")
d.Save("morph.dict")
```