Skyeng - Import Words
Расширение для Anki, которое импортирует списки слов (wordsets) из вашего аккаунта Skyeng.
Важное уведомление
Это расширение является неофициальным инструментом. Оно не одобрено, не поддерживается и не связано с компанией Skyeng.
Расширение использует внутреннее API сайта исключительно для того, чтобы помочь пользователю синхронизировать свои слова.
Автор не несёт ответственности за возможные блокировки аккаунтов или изменение работоспособности API.
Возможности
- Импорт всех слов из уроков, каталога, добавленных вручную и браузерных расширений Skyeng
- Фильтрация по источнику и диапазону дат
- Защита от дубликатов — повторный импорт и одноимённые списки не создают повторных карточек
- Загрузка аудио (произношение слова, примеры) и изображений
- Устойчивость к сбоям: слова, для которых не удалось получить данные, не теряются молча, а показываются в отчёте («Not imported (no data)»)
- Автосинхронизация с AnkiWeb после импорта (опционально)
Установка
Расширение можно установить только через менеджер дополнений Anki:
- Откройте Anki
- Перейдите в Инструменты → Дополнения → Скачать дополнения...
- Введите код расширения:
2099811466
- Перезапустите Anki
Использование
- Откройте Инструменты → Skyeng Sync
- Войдите в аккаунт Skyeng (логин и пароль)
- Выберите источники и диапазон дат
- Нажмите Sync
При повторном запуске авторизация не требуется — сессия сохраняется.
Структура колод
Слова автоматически распределяются по колодам в зависимости от источника:
- Уроки с преподавателем → колода
Skyeng — from lessons
- Каталог (самостоятельно) → колода
Skyeng — from catalog
- Добавленные вручную → колода
Skyeng — added by me
- Браузерные расширения → колода
Skyeng — extensions
- Прочее → колода
Skyeng — other
Слова из неизвестного или нового источника попадают в Skyeng — added by me.
Как это выглядит в Anki

Иерархия для уроков
Слова из уроков дополнительно группируются по месяцу и дате:
Skyeng — from lessons
├── 2025-01
│ ├── 25.01.15 Lesson Title
│ └── 25.01.22 Another Lesson
└── 2025-02
└── 25.02.01 New Lesson
Формат подколоды: YY.MM.DD Название урока
Безопасность и приватность
Пароль не сохраняется. Он используется однократно для получения токенов авторизации.
После входа в аккаунт в локальном конфиге Anki сохраняются:
access_token — токен доступа к API
refresh_token — токен для обновления сессии
username — ваш логин, чтобы в окне синхронизации было видно, под каким аккаунтом вы вошли
Конфигурация хранится локально на вашем компьютере в стандартной директории дополнений Anki. Данные передаются только на серверы skyeng.ru.
Для выхода из аккаунта нажмите Logout — токены и логин будут удалены.
Рекомендации и ограничения
- При первом использовании рекомендуется синхронизировать слова небольшими порциями (по диапазону дат), а не все сразу. Это снизит нагрузку на API Skyeng и уменьшит риск возможных ограничений со стороны сервиса.
- Расширение разрабатывалось и тестировалось только с продуктом Skyeng English. Поведение при использовании нескольких продуктов Skyeng (например, Skyeng Math) не проверялось. Поддержка других продуктов возможна в будущем.
Логи
Расширение ведёт логи для диагностики проблем:
- Расположение: папка
logs/ внутри директории расширения
- Формат файлов:
skyeng_sync_YYYY-MM-DD.log
- Хранение: логи старше 7 дней удаляются при запуске Anki. Если расширение удалено или Anki не запускался — логи останутся на диске.
- Приватность: логин (email) в логах маскируется (например,
us***@example.com); пароли и токены не логируются.
Как открыть логи
Проще всего — через Anki: Инструменты → Дополнения → выбрать расширение → View Files, затем откройте папку logs/.
Либо напрямую (<id> — папка расширения: числовой код с AnkiWeb):
- Windows:
%APPDATA%\Anki2\addons21\<id>\logs\
- macOS:
~/Library/Application Support/Anki2/addons21/<id>/logs/
- Linux (Ubuntu):
~/.local/share/Anki2/addons21/<id>/logs/
При возникновении ошибок диалог синхронизации показывает последние записи лога и позволяет скопировать их в буфер обмена.
Техническая информация
Расширение использует API Skyeng для получения списка слов и их данных:
- Subtly API (внутреннее) — получение списка wordsets (наборов слов) пользователя
- Dictionary API (публичное) — получение подробной информации о словах (перевод, транскрипция, примеры, аудио, изображения)
Обратная связь и участие
К сожалению, репозиторий является приватным, поскольку используется неофициальное API Skyeng.
Исходный код при этом открыт — он поставляется вместе с расширением.
Однако я буду рада любой помощи и участию.
Поэтому, если вы нашли баг и хотите его починить, или просто хотите добавить новую функциональность, то напишите мне в личные сообщения и я дам вам доступ к репозиторию - вы сможете предложить свои изменения через pull request.
Также, если есть идеи, как сделать расширение лучше, тоже пишите, буду рада:)
История изменений
1.1.0 (15.07.2026)
- Каталожные слова, добавленные в мобильном приложении, теперь синхронизируются — раньше они пропускались.
- В окне синхронизации видно, под каким аккаунтом вы вошли.
- Больше не появляются дубли: повторная синхронизация и списки с одинаковыми названиями не создают лишних карточек.
- Наборы без названия получают понятное имя колоды вместо «Untitled».
- Синхронизация стала надёжнее: слова не теряются молча (их число видно в отчёте), сетевой сбой больше не выкидывает из аккаунта, а редкие ошибки при загрузке аудио и картинок исправлены.
1.0.0