const axios = require('axios'); async function getReleaseFromAnixart(releaseId, token = '') { const url = `https://api.anixart.tv/release/${releaseId}${token ? `?token=${token}` : ''}`; try { const response = await axios.get(url); const release = response.data?.release; if (!release) { return { code: 2, release: null }; } const title = release.title_original || release.title_ru || ''; const year = release.year || ''; let noteExtra = ''; // Получаем данные с Deno-прокси try { const proxyUrl = `https://shikimori-proxy.deno.dev/shiki?search=${encodeURIComponent(title)}&year=${year}`; const shikiRes = await axios.get(proxyUrl); const anime = shikiRes.data?.[0]; let score = anime?.score || 'N/A'; let characters = 'N/A'; // Получение ролей персонажей if (anime?.id) { const rolesUrl = `https://shikimori.one/api/animes/${anime.id}/roles`; const rolesRes = await axios.get(rolesUrl); const mainCharacters = rolesRes.data .filter((char) => char.roles.includes('Main')) .slice(0, 5) .map((char) => `${char.character.russian}`) .join(', '); characters = mainCharacters || 'N/A'; } noteExtra = `Оценки из Shikimori: ${score}
Главные персонажи: ${characters}
`; } catch (err) { noteExtra = `Оценки из Shikimori: N/A
Главные персонажи: N/A`; } // Объединяем с оригинальным note от Anixart const originalNote = release.note?.trim(); let finalNote = noteExtra; if (originalNote) { finalNote += `
Примечание от Anixart:
${originalNote}`; } release.note = finalNote; return { code: 0, release }; } catch { return { code: 2, release: null }; } } module.exports = { getReleaseFromAnixart };