rupo.main package

Submodules

rupo.main.markup module

class rupo.main.markup.Annotation(begin: int, end: int, text: str)[source]

Bases: CommonMixin

Класс аннотации. Содержит начальную и конечную позицию в тексте, а также текст аннотации.

class rupo.main.markup.Line(begin: int, end: int, text: str, words: List[Word])[source]

Bases: Annotation

Разметка строки. Включает в себя аннотацию строки и её слова.

count_vowels()[source]
from_dict(d) Line[source]
class rupo.main.markup.Markup(text: Optional[str] = None, lines: Optional[List[Line]] = None)[source]

Bases: CommonMixin

Класс данных для разметки в целом с экспортом/импортом в XML и JSON.

from_dict(d) Markup[source]
from_json(st) Markup[source]
from_raw(text: str) Markup[source]

Импорт из сырого текста с ударениями в конце слов

Parameters

text – текст.

Returns

разметка.

from_xml(xml: str) Markup[source]

Импорт из XML.

Parameters

xml – XML-разметка

Return self

получившийся объект Markup

static process_text(*args, **kw)
to_json() str[source]
to_xml() str[source]

Экспорт в XML.

Return self

строка в формате XML

class rupo.main.markup.Syllable(begin: int, end: int, number: int, text: str, stress: int = - 1)[source]

Bases: Annotation

Разметка слога. Включает в себя аннотацию и номер слога, а также ударение. Если ударение падает не на этот слог, -1.

from_dict(d: dict) Syllable[source]
vowel() int[source]
Returns

позиция гласной буквы этого слога в слове (с 0).

class rupo.main.markup.Word(begin: int, end: int, text: str, syllables: List[Syllable])[source]

Bases: Annotation

Разметка слова. Включает в себя аннотацию слова и его слоги.

count_stresses() int[source]
Returns

количество ударений в слове.

from_dict(d: dict) Word[source]
get_short() str[source]
Returns

слово в форме “текст”+”последнее ударение”.

get_stressed_syllables_numbers() List[int][source]
Returns

номера слогов, на которые падают ударения.

get_stresses() Set[int][source]
Returns

все ударения.

set_stresses(stresses: List[int]) None[source]

Задать ударения, все остальные убираются.

Parameters

stresses – позиции ударения в слове.

stress() int[source]
Returns

последнее ударение в слове, если нет, то -1.

to_stressed_word()[source]

rupo.main.test_markup module

class rupo.main.test_markup.TestMarkup(methodName='runTest')[source]

Bases: TestCase

classmethod setUpClass()[source]

Hook method for setting up class fixture before running tests in the class.

classmethod tearDownClass()[source]

Hook method for deconstructing the class fixture after running all tests in the class.

test_from_to()[source]
test_process_text()[source]

rupo.main.test_tokenizer module

class rupo.main.test_tokenizer.TestSentenceTokenizer(methodName='runTest')[source]

Bases: TestCase

test_tokenizer()[source]
class rupo.main.test_tokenizer.TestTokenizer(methodName='runTest')[source]

Bases: TestCase

test_numbers()[source]
test_tokenizer()[source]

rupo.main.test_vocabulary module

class rupo.main.test_vocabulary.TestVocabulary(methodName='runTest')[source]

Bases: TestCase

test_vocabulary()[source]

rupo.main.tokenizer module

class rupo.main.tokenizer.SentenceTokenizer[source]

Bases: object

static tokenize(text: str) List[str][source]
class rupo.main.tokenizer.Token(text: str, token_type: TokenType, begin: int, end: int)[source]

Bases: object

class TokenType(value)[source]

Bases: Enum

Тип токена.

ENDLINE = 3
NUMBER = 4
PUNCTUATION = 1
SPACE = 2
UNKNOWN = -1
WORD = 0
class rupo.main.tokenizer.Tokenizer[source]

Bases: object

Класс токенизации.

static tokenize(text: str, remove_punct=False, remove_unknown=False, replace_numbers=False) List[Token][source]

Токенизация текстов на русском языке с учётом знаков препинания и слов с дефисами.

Parameters

text – исходный текст.

Returns

список токенов.

rupo.main.vocabulary module

class rupo.main.vocabulary.StressVocabulary[source]

Bases: object

Индексированный словарь.

add_markup(markup: Markup) None[source]

Добавление слов из разметки в словарь.

Parameters

markup – разметка.

add_word(word: StressedWord, index: int = - 1) bool[source]

Добавление слова.

Parameters
  • word – слово.

  • index – индекс, если задан заранее.

Returns

слово новое или нет.

get_word(index: int) StressedWord[source]

Получить слово по индексу.

Parameters

index – индекс.

Returns

слово.

get_word_index(word: StressedWord) int[source]

Получить индекс слова.

Parameters

word – слово (Word).

Returns

индекс.

load(dump_filename: str)[source]

Загрузка словаря.

parse(markup_path: str, from_voc: bool = False)[source]
save(dump_filename: str) None[source]

Сохранение словаря.

size()[source]
Returns

получить размер словаря.

rupo.main.vocabulary.inflate_stress_vocabulary(vocabulary: Vocabulary, stress_predictor: StressPredictor)[source]

Module contents