Warning
Данный проект был сделан в ознакомительных целях. Автор осуждает и не поддерживает создание авторегов, ботов для накрутки лайков, спам ботов и любых других проектов нацеленых на абуз и злоупотребление API Anixart.
AnixartJS — это имплементация API Anixart на TypeScript для NodeJS, предоставляющая удобный и интуитивно понятный интерфейс для взаимодействия с приложением Anixart.
Установите AnixartJS с помощью npm:
npm install anixartjs
В этом примере показано, как использовать библиотеку AnixartJS для взаимодействия с API Anixart. Вы можете использовать как готовые методы классов, так и прямой доступ к эндпоинтам.
const { Anixart } = require("anixartjs");
/**
* Авторизация может быть выполнена двумя способами:
*
* 1. Используя токен при создании экземпляра класса:
* new Anixart({ token: "your-token-here" })
*
* 2. Используя метод login():
* const anixartClient = new Anixart();
* anixartClient.login("username", "password"); // Возвращает ResponseCode
*/
const anixartClient = new Anixart();
// Использование готовых методов классов
anixartClient.getArticleById(123).then(article => {
if (article) {
console.log("📚 Статья найдена:");
} else {
console.log("⚠️ Статья не найдена.");
}
}).catch(error => {
console.error("🚨 Ошибка при получении статьи:", error);
});
anixartClient.getProfileById(456).then(profile => {
console.log("👤 Профиль пользователя:");
console.log(`Имя пользователя: ${profile.login}`);
console.log(`ID: ${profile.id}`);
}).catch(error => {
console.error("🚨 Ошибка при получении профиля:", error);
});
// Использование эндпоинтов напрямую
anixartClient.endpoints.release.info(789, true).then(rawResponse => {
console.log("🎬 Информация о релизе (RAW):");
console.log(rawResponse);
}).catch(error => {
console.error("🚨 Ошибка при получении информации о релизе:", error);
});
Чтобы начать использовать AnixartJS, создайте экземпляр класса Anixart
. Вы можете указать пользовательский базовый URL или токен API при инициализации.
import { Anixart } from 'anixartjs'; //ESM or Typescript
const { Anixart } = require("anixartjs"); //CommonJS
const anixart = new Anixart({
baseUrl: 'base-url', // Опционально, по умолчанию https://api.anixart.tv
token: 'your-token' // Опционально, используется для авторизованных запросов
});
Для входа в систему используйте метод login
. После успешной аутентификации токен API будет автоматически сохранен в экземпляре для последующих запросов.
try {
const responseCode = await anixart.login('ваше-имя-пользователя', 'ваш-пароль');
if (responseCode === 0) {
console.log('🎉 Вход выполнен успешно!');
} else {
console.error('❌ Ошибка входа, код:', responseCode);
}
} catch (error) {
console.error('🚨 Ошибка при входе:', error);
}
AnixartJS предоставляет методы для получения различных типов данных из API Anixart. Вот несколько примеров:
const channel = await anixart.getChannelById(123);
if (channel) {
console.log(`📺 Название канала: ${channel.title}`);
} else {
console.log('⚠️ Канал не найден.');
}
const profile = await anixart.getProfileById(456);
console.log(`👤 Имя пользователя: ${profile.login}`);
const articles = await anixart.getLatestFeed(1); // Номер страницы как аргумент
articles.forEach(article => {
console.log(`📄 ID статьи: ${article.id}`);
});
const release = await anixart.getRandomRelease(true); // Расширенные детали
console.log(`🎲 Заголовок случайного релиза: ${release.titleRu}`);
const article = await anixart.getArticleById(789);
if (article) {
console.log(`📄 ID статьи: ${article.id}`);
} else {
console.log('⚠️ Статья не найдена.');
}
const release = await anixart.getReleaseById(101, true); // Расширенные детали
if (release) {
console.log(`🎬 Заголовок релиза: ${release.titleRu}`);
} else {
console.log('⚠️ Релиз не найден.');
}
- Добавление всех эндпоинтов
- Добавление классов для коллекций
- Документация
- Возможность использовать библиотеку в браузере полностью
Я рад принимать вклады для улучшения AnixartJS!
Убедитесь, что ваш код соответствует стандартам проекта.
- AniDesk - Неофициальный десктоп клиент Anixart [Ссылка]
Этот проект лицензирован под GPL-2.0. Подробности см. в файле LICENSE.
Если у вас есть вопросы или проблемы, пожалуйста, откройте issue в GitHub репозитории. Я буду рад помочь! 😊