1.0.0 • Published 12 months ago

opex-yandex-speller v1.0.0

Weekly downloads
-
License
ISC
Repository
-
Last release
12 months ago

API Яндекс.Спеллер

Этот пакет предоставляет удобный способ взаимодействия с API Яндекс.Спеллер для проверки правописания на русском, украинском и английском языках.

Юридическая информация Яндекс API

Условия использования

Ограничения

10 000 запросов в день

  • (Лимит на количество обращений к Сервису - в среднем 10 тысяч обращений в сутки);

10 000 000 символов в день

  • Лимит на объем проверяемого текста - в среднем 10 миллионов символов в сутки.

Установка

npm install opex-yandex-speller

Использование

Вы можете импортировать пакет, используя модули ES6 или require CommonJS:

// Импорт ES6
import { YandexSpeller } from 'opex-yandex-speller';

// Require CommonJS
const { YandexSpeller } = require('opex-yandex-speller');

Справочник по API

Класс YandexSpeller

Основной класс для взаимодействия с API Яндекс.Спеллер.

Конструктор

const speller = new YandexSpeller(settings);
  • settings (необязательно): Объект со следующими свойствами:
    • format (строка): Формат текста, либо 'plain' (по умолчанию), либо 'html'.
    • lang (строка): Языки для проверки правописания, разделенные запятыми. По умолчанию: 'en,ru'.
    • options (объект): Опции спеллера (см. ниже).
    • requestLimit (число): Максимальное количество попыток запроса. По умолчанию: 2.
    • timeout (число): Тайм-аут между попытками запроса в миллисекундах. По умолчанию: 500.

Опции спеллера

  • ignoreDigits (boolean): Игнорировать слова с цифрами, например, "avp17h4534".
  • ignoreUrls (boolean): Игнорировать URL-адреса, адреса электронной почты и имена файлов.
  • findRepeatWords (boolean): Выделять повторяющиеся слова, например, "я полетел в в в Кипр".
  • ignoreCapitalization (boolean): Игнорировать неправильное использование заглавных букв, например, "москва" вместо "Москва".

Методы

checkText(text)

Проверяет правописание заданного текста.

  • text (строка): Текст для проверки.
  • Возвращает: Promise, который разрешается в массив орфографических ошибок.

Пример:

const speller = new YandexSpeller();

async function checkSpelling() {
    try {
        const result = await speller.checkText('тесст тексст');
        console.log(result);
    } catch (error) {
        console.error('Ошибка:', error.message);
    }
}

checkSpelling();

checkTexts(texts)

Проверяет правописание нескольких текстовых фрагментов.

  • texts (массив строк): Массив текстовых фрагментов для проверки.
  • Возвращает: Promise, который разрешается в массив массивов, каждый из которых содержит орфографические ошибки для соответствующего текстового фрагмента.

Пример:

const speller = new YandexSpeller();

async function checkMultipleTexts() {
    try {
        const result = await speller.checkTexts(['тесст тексст', 'другой примерр']);
        console.log(result);
    } catch (error) {
        console.error('Ошибка:', error.message);
    }
}

checkMultipleTexts();

Коды ошибок

API использует следующие коды ошибок:

  • ERROR_UNKNOWN_WORD (1): Неизвестное слово.
  • ERROR_REPEATED_WORD (2): Повторяющееся слово.
  • ERROR_CAPITALIZATION (3): Ошибка в использовании заглавных букв.
  • ERROR_TOO_MANY_ERRORS (4): Слишком много ошибок.

Вы можете импортировать эти константы:

import { ERROR_UNKNOWN_WORD, ERROR_REPEATED_WORD, ERROR_CAPITALIZATION, ERROR_TOO_MANY_ERRORS } from 'opex-yandex-speller';

Формат ответа

API возвращает массив объектов ошибок. Каждый объект ошибки имеет следующую структуру:

  • code (число): Код ошибки (см. выше).
  • pos (число): Позиция ошибки в тексте (начиная с 0).
  • row (число): Номер строки ошибки (начиная с 0).
  • col (число): Номер столбца ошибки (начиная с 0).
  • len (число): Длина ошибочного слова.
  • word (строка): Слово с ошибкой.
  • s (массив строк): Предложенные исправления.

Пример ответа:

[
    {
        code: 1,
        pos: 0,
        row: 0,
        col: 0,
        len: 5,
        word: "тесст",
        s: ["тест", "текст"]
    },
    {
        code: 1,
        pos: 6,
        row: 0,
        col: 6,
        len: 6,
        word: "тексст",
        s: ["текст"]
    }
]

Благодарности

Этот пакет является оберткой для API Яндекс.Спеллер. Пожалуйста, обратитесь к их документации для получения более подробной информации о сервисе.

Разработчик пакета

OpexDev