Skip to main content

Pacage for translation of Russian-English words

Project description

SkyengDict: Асинхронная библиотека для работы с Dictionary API Skyeng

Описание

SkyengDict — это асинхронная библиотека на Python, предоставляющая доступ к API словаря Skyeng. Она позволяет искать слова, получать их значения и обрабатывать лингвистические данные, такие как части речи, переводы и произношения.

Установка

pip install skyengdict

Пример использования

import asyncio  
from skyengdict import Dictionary  
from skyengdict.types import Meaning, BriefMeaning

  async def main():    
    tasks = []    
    async with Dictionary() as dictionary:
     
        result_1 = await dictionary.words('любовь', pagesize=1)    
        for word in result_1:    
            print(f"{word.text} - {word.meanings[0].translation}")    
                
        result_2 = await dictionary.meaning(45)    
        for mean in result_2:    
            print(f"{mean.text} - {mean.translation}\n")    
    
    await asyncio.gather(*tasks)    
    
if __name__ == '__main__':    
    asyncio.run(main())  

Класс Dictionary

Параметры:
- logging: Логировать процесс получения данных. По умолчанию False
- rising: Возбуждать исключения, если не найдены слова (значения), либо возвращать пустой список. По умолчанию True

Основной класс для взаимодействия с API Skyeng Dictionary. Он предоставляет методы для поиска слов и получения их значений.

Методы:

  • words(word: str, page: int = 1, pagesize: int = 0) -> list[Word]
    Выполняет поиск слов по заданному запросу.

    Параметры:

    • word: Слово для поиска (либо на английском, либо на русском).
    • page: Номер страницы для пагинации.
    • pagesize: Количество результатов на странице (если значение 0, то выводит результат всех найденых объектов Word в списке).

    Возвращает:

    • Список объектов Word, представляющих найденные слова с краткими значениями.
  • meaning(ids: int | list[int], data: str = None) -> list[Meaning]
    Получает подробную информацию о значениях слов по их идентификаторам.

    Параметры:

    • ids: Один идентификатор значения или список идентификаторов.
    • data: Дата в формате строки.

    Возвращает:

    • Список объектов Meaning, представляющих полную информацию о значениях.

Типы данных

Word

Представляет слово и связанные с ним краткие значения.

  • Атрибуты:
    • id: Уникальный идентификатор слова.
    • text: Слово в текстовом виде.
    • meanings: Список объектов BriefMeaning, представляющих краткие значения слова.

BriefMeaning

Краткое описание значения слова.

  • Атрибуты:
    • id: Уникальный идентификатор значения.
    • part_of_speech_code: Часть речи, представляемая перечислением PartOfSpeechCode.
    • translation: Перевод текста.
    • translation_note: Примечания к переводу.
    • image_url: URL изображения.
    • transcription: Фонетическая транскрипция в формате IPA.
    • sound_url: Объект Pronunciation, содержащий ссылку на произношение слова.
    • text: Слово на английском.

Meaning

Подробное описание значения слова на английском.

  • Атрибуты:
    • id: Уникальный идентификатор значения.
    • word_id: Идентификатор слова, к которому относится значение.
    • difficulty_level: Уровень сложности (от 1 до 6).
    • part_of_speech_code: Часть речи для данного значения.
    • prefix: Приставка или артикли (например, "to" или "the").
    • text: Слово на английском.
    • sound_url: Объект Pronunciation, представляющий ссылку URL на произношение.
    • transcription: Фонетическая транскрипция.
    • properties: Объект Properties, содержащий грамматическую информацию.
    • updated_at: Дата последнего обновления значения.
    • mnemonics: Мнемоническая подсказка для значения.
    • translation: Перевод текста значения.
    • translation_note: Примечания к переводу (если есть).
    • images_url: Список URL изображений.
    • images_id: Список идентификаторов изображений.
    • definition: Описание значения.
    • definition_sound_url: Ссылка на произношение описания.
    • examples: Список объектов Example, содержащих примеры использования.
    • meanings_with_similar_translation: Список объектов MeaningWithSimilarTranslation, представляющих значения с похожими переводами.
    • alternative_translations: Список объектов AlternativeTranslation, представляющих альтернативные переводы.

PartOfSpeechCode (Enum)

Перечисление, представляющее часть речи слова. Доступны следующие значения:

  • n: существительное
  • v: глагол
  • j: прилагательное
  • r: наречие
  • prp: предлог
  • prn: местоимение
  • crd: количественное числительное
  • cjc: союз
  • exc: междометие
  • det: артикль
  • abb: сокращение
  • x: частица
  • ord: порядковое числительное
  • md: модальный глагол
  • ph: фраза
  • phi: идиома

Pronunciation

Возвращает URL-адрес на аудио-запись с определенным произношением.

  • Методы:
    • british_male: Возвращает URL-адрес для мужского голоса c британским произношением.
    • amrican_male: Возвращает URL-адрес для мужского голоса c американским произношением.
    • british_female: Возвращает URL-адрес для женского голоса c британским произношением.
    • amrican_female: Возвращает URL-адрес для женского голоса c американским произношением.

пример использования:

from skyengdict.type import Pronunciation

url = "https://vimbox-tts.skyeng.ru/api/v1/tts?text=Hello&lang=en&voice=male_2"
pronunciation = Pronunciation(url)
print(pronunciation.male_1)

Properties

Грамматические свойства слова.

  • Атрибуты:
    • collocation: Указывает, является ли слово коллокацией.
    • irregular: Указывает, является ли слово неправильным.
    • past_tense: Прошедшая форма глагола (если применимо).
    • past_participle: Причастие прошедшего времени (если применимо).
    • transitivity: Переходность глагола (если применимо).
    • phrasal_verb: Указывает, является ли слово фразовым глаголом.
    • sound_url: Объект Pronunciation для звукового сопровождения.
    • false_friends: Список ложных друзей (если есть).

Translation

Представляет перевод слова или фразы.

  • Атрибуты:
    • text: Текст перевода.
    • note: Примечания к переводу.

Example

Представляет пример использования слова.

  • Атрибуты:
    • text: Пример предложения.
    • sound_url: Объект Pronunciation для произношения примера.

Исключения (Exceptions)

Библиотека предоставляет следующие пользовательские исключения:

SkyConnectorError

Исключение, возникающее при отсутствии соединения с сервером.

from skyengdict.exceptions import SkyConnectorError

try:
    async with Dictionary() as dictionary:
        await dictionary.words("example")    
except SkyConnectorError:
    print("Ошибка соединения с сервером SkyEng.")

WordsNotFound

Исключение, возникающее, если слово не найдено.

from skyengdict.exceptions import WordsNotFound

try:
    async with Dictionary() as dictionary:
        word = await dictionary.words("nonexistentword0101010")
except WordsNotFound:
    print("Слово не найдено.")

MeaningsNotFound

Исключение, возникающее, если значения слова не найдены.

from skyengdict.exceptions import MeaningsNotFound

try:
    async with Dictionary() as dictionary:
        meaning = await dictionary.meaning(1000)
except MeaningsNotFound:
    print("Значения для слова не найдены.")

Предложения

Присоединяйтесь к обсуждению и развитию проекта. Буду рад вашим предложениям и пулреквестам. Мои другие текущие проекты читайте в моем Telegram-канале.

Лицензия

Эта библиотека лицензирована под лицензией MIT.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

skyengdict-1.0.11.tar.gz (10.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

skyengdict-1.0.11-py3-none-any.whl (11.3 kB view details)

Uploaded Python 3

File details

Details for the file skyengdict-1.0.11.tar.gz.

File metadata

  • Download URL: skyengdict-1.0.11.tar.gz
  • Upload date:
  • Size: 10.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.6

File hashes

Hashes for skyengdict-1.0.11.tar.gz
Algorithm Hash digest
SHA256 58445a7628590c5c5d76ae694bded865274a53442bf2977d6d389595ac693517
MD5 d279e07cc3acec094aeca56be6b3a75d
BLAKE2b-256 784a0e22a5c8f2130f0d516e6e94d2f5ce1485c3e965c094435bdacd53340c9b

See more details on using hashes here.

File details

Details for the file skyengdict-1.0.11-py3-none-any.whl.

File metadata

  • Download URL: skyengdict-1.0.11-py3-none-any.whl
  • Upload date:
  • Size: 11.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.0.1 CPython/3.11.6

File hashes

Hashes for skyengdict-1.0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 1d3f5e161ff6173266c47d9f36338192dddd22ded4d651bb9727fbc5f97025f3
MD5 d2c118a65ac6e5982abd01ac85bfb0b4
BLAKE2b-256 c72ae30e77033757cb5744b81188739614ad8f4e0391ffd7d2b3b88cd98cca47

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page