Python package for working with Warodai and Yarxi dictionaries
Project description
JRSub
Установка
pip install jrsub
Использование
Загрузка ранее сгенерированной словарной базы
ЯРКСИ
yl = YarxiLoader() // экземпляр загрузчика
yd = yl.load() // словарь
Warodai
wl = WarodaiLoader() // экземпляр загрузчика
wd = wl.load() // словарь
Поиск в словарях
yd.lookup(lexeme: str[, reading: str, search_mode: SearchMode])
→ [SearchResult]
- возвращает список
SearchResult
, включающих в себя поляlexeme
,reading
иtranslation
из подходящих записей; - все три поля являются списками строк.
yd.lookup_translations_only(lexeme: str[, reading: str, search_mode: SearchMode])
→ [str]
- возвращает значения полей "перевод" из подходящих записей в виде одномерного списка строк.
Параметр | Допустимые значения | Обязательный параметр |
---|---|---|
lexeme |
хирагана, катакана, кандзи | ✔️ |
reading |
хирагана | ❌ |
search_mode |
SearchMode.consecutive , SearchMode.deep_only , SearchMode.shallow_only |
❌ |
-
SearchMode.shallow_only
: поиск осуществляется только по исходным формам, дословно приведенным в словаре. Малейшие изменения в слове (например, лишние символы окуриганы или их отсутствие) приведут к пустой выдаче словаря. -
SearchMode.deep_only
: задает "глубокий" режим поиска: при поиске в первую очередь учитываются входящие в слово иероглифы. Этот режим работает медленнее, чемSearchMode.shallow_only
, но при этом он гораздо надежнее. -
SearchMode.consecutive
(задан по умолчанию): вначале запускается "поверхностный поиск", а затем, если он не дал результатов, -- "глубокий". Это оптимальный из всех трех вариантов, лучше его не изменять.
Пересборка словарных баз
Методы загрузчиков
Действие | Метод | Аргументы | Начальное значение |
---|---|---|---|
Включение/откючение транслитерации примеров в переводах | .enable_transliteration |
mode: bool |
True (включено) |
Изменение префикса к переводам, свойственным иероглифам в составе сложных слов (только для ЯРКСИ) | .set_compounds_pref |
pref: str |
'〈в сочет.〉' |
Изменение способа выделения некоторых частей перевода | .set_highlighting |
left: str ; right: str |
'《' ; '》' |
Запуск перестройки словарной базы | .rescan |
path: str ; show_progress: bool |
папка dictionaries/source в каталоге установки пакета; True |
- Для отображения в браузере можно при помощи
set_highlighting
заменить кавычки-елочки на HTML-теги:yl.set_highlighting('<i>', '</i>')
; - Перестройка одной базы занимает около восьми минут: полосы прогресса позволяют отследить, на какой стадии база находится в данный момент.
- При перестройке рекомендую использовать отредактированные мной варианты исходников, доступные в репозитории в каталоге
dictionaries/source
(список изменений вЯркси
|Вародае
; в основном изменения касаются форматирования, но также было найдено и исправлено несколько опечаток).
Методы полученных после сборки словарных баз
Действие | Метод | Аргументы | Значение по умолчанию |
---|---|---|---|
Сохранение перестроенной базы | .save |
path: str |
папка dictionaries в каталоге установки пакета |
- Если оставить значение пути по умолчанию, база будет сохраняться в установочный каталог пакета, и при следующем запуске к ней можно будет получить доступ методом загрузчика
.load()
без параметров.
Примеры работы со словарями (demo
)
cli.py
-- самый простой пример взаимодействия через командную строку;app.py
-- веб-интерфейс для работы через браузер;flask.Dockerfile
-- docker-контейнер с приложением из файлаapp.py
.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file jrsub-0.1.11.tar.gz
.
File metadata
- Download URL: jrsub-0.1.11.tar.gz
- Upload date:
- Size: 7.6 MB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.7.15 Linux/5.15.0-1031-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 59955d3c7462a0588df2d4870e31107ddb4504e79076b617cdf55e4fcf5e6239 |
|
MD5 | 02d4e83d24d96741eb2ccdedb79af1a8 |
|
BLAKE2b-256 | ab29c9b0f11aa9295074bde6348ba26fee9cebd73fdf137e0e2c65ab296d25f8 |
File details
Details for the file jrsub-0.1.11-py3-none-any.whl
.
File metadata
- Download URL: jrsub-0.1.11-py3-none-any.whl
- Upload date:
- Size: 7.7 MB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.3.2 CPython/3.7.15 Linux/5.15.0-1031-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b3ed7d2527cc62ca59913f8f17381a9400f9128962ef4299a18fd4f3b9badf62 |
|
MD5 | 0c5c0bdcca09f0adb6da72bf02320edd |
|
BLAKE2b-256 | 36fc36bdbc489b20f1834ec075baf37ad61d2f730a3d358ab715c13dc7653738 |