Update kickassanimes/kickassanimes.js
This commit is contained in:
@@ -5,13 +5,13 @@ async function searchResults(keyword) {
|
|||||||
"Content-Type": "application/json"
|
"Content-Type": "application/json"
|
||||||
};
|
};
|
||||||
try {
|
try {
|
||||||
const response = await fetchv2("https://kickass-anime.ro/api/search", headers, "POST", postData);
|
const response = await fetchv2("https://kaa.lt/api/search", headers, "POST", postData);
|
||||||
const data = await response.json();
|
const data = await response.json();
|
||||||
|
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
results.push({
|
results.push({
|
||||||
title: item.title_en || item.title,
|
title: item.title_en || item.title,
|
||||||
image: `https://kickass-anime.ro/image/poster/${item.poster.hq}.webp`,
|
image: `https://kaa.lt/image/poster/${item.poster.hq}.webp`,
|
||||||
href: `${item.slug}`
|
href: `${item.slug}`
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@@ -28,28 +28,28 @@ async function searchResults(keyword) {
|
|||||||
|
|
||||||
async function extractDetails(slug) {
|
async function extractDetails(slug) {
|
||||||
try {
|
try {
|
||||||
const response = await fetchv2("https://kickass-anime.ro/" + slug);
|
const response = await fetchv2("https://kaa.lt/" + slug);
|
||||||
const html = await response.text();
|
const html = await response.text();
|
||||||
|
|
||||||
const synopsisMatch = html.match(/f\.synopsis\s*=\s*"([^"]*)"/);
|
const synopsisMatch = html.match(/g\.synopsis\s*=\s*"([^"\\]*(?:\\.[^"\\]*)*)"/);
|
||||||
const description = synopsisMatch ? synopsisMatch[1] : "N/A";
|
const description = synopsisMatch ? synopsisMatch[1].replace(/\\n/g, "\n") : "N/A";
|
||||||
|
|
||||||
const aliasesMatch = html.match(/f\.title_original\s*=\s*"([^"]*)"/);
|
const aliasesMatch = html.match(/g\.title_original\s*=\s*"([^"]*)"/);
|
||||||
const aliases = aliasesMatch ? aliasesMatch[1] : "N/A";
|
const aliases = aliasesMatch ? aliasesMatch[1] : "N/A";
|
||||||
|
|
||||||
const airdateMatch = html.match(/f\.start_date\s*=\s*"([^"]*)"/);
|
const airdateMatch = html.match(/g\.start_date\s*=\s*"([^"]*)"/);
|
||||||
const airdate = airdateMatch ? airdateMatch[1] : "N/A";
|
const airdate = airdateMatch ? airdateMatch[1].split('T')[0] : "N/A";
|
||||||
|
|
||||||
return JSON.stringify([{
|
return JSON.stringify([{
|
||||||
description: description,
|
description: description,
|
||||||
aliases: aliases,
|
aliases: aliases,
|
||||||
airdate: airdate
|
airdate: airdate,
|
||||||
}]);
|
}]);
|
||||||
} catch (err) {
|
} catch (err) {
|
||||||
return JSON.stringify([{
|
return JSON.stringify([{
|
||||||
description: "Error",
|
description: "Error",
|
||||||
aliases: "Error",
|
aliases: "Error",
|
||||||
airdate: "Error"
|
airdate: "Error",
|
||||||
}]);
|
}]);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -58,9 +58,9 @@ async function extractEpisodes(slug) {
|
|||||||
const results = [];
|
const results = [];
|
||||||
try {
|
try {
|
||||||
const cleanSlug = slug.replace("anime/", "");
|
const cleanSlug = slug.replace("anime/", "");
|
||||||
const responseEn = await fetchv2(`https://kickass-anime.ro/api/show/${cleanSlug}/episodes?ep=1&page=1&lang=en-US`);
|
const responseEn = await fetchv2(`https://kaa.lt/api/show/${cleanSlug}/episodes?ep=1&page=1&lang=en-US`);
|
||||||
const dataEn = await responseEn.json();
|
const dataEn = await responseEn.json();
|
||||||
const responseJa = await fetchv2(`https://kickass-anime.ro/api/show/${cleanSlug}/episodes?ep=1&page=1&lang=ja-JP`);
|
const responseJa = await fetchv2(`https://kaa.lt/api/show/${cleanSlug}/episodes?ep=1&page=1&lang=ja-JP`);
|
||||||
const dataJa = await responseJa.json();
|
const dataJa = await responseJa.json();
|
||||||
|
|
||||||
const enMap = {};
|
const enMap = {};
|
||||||
@@ -72,7 +72,7 @@ async function extractEpisodes(slug) {
|
|||||||
const enSlug = enMap[episode.episode_number];
|
const enSlug = enMap[episode.episode_number];
|
||||||
const hrefSlug = enSlug ? `${enSlug}|${episode.slug}` : episode.slug;
|
const hrefSlug = enSlug ? `${enSlug}|${episode.slug}` : episode.slug;
|
||||||
results.push({
|
results.push({
|
||||||
href: `https://kickass-anime.ro/${cleanSlug}/ep-${episode.episode_number}-${hrefSlug}`,
|
href: `https://kaa.lt/${cleanSlug}/ep-${episode.episode_number}-${hrefSlug}`,
|
||||||
number: episode.episode_number
|
number: episode.episode_number
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
@@ -125,7 +125,7 @@ async function extractStreamUrl(url) {
|
|||||||
|
|
||||||
let enDetails = null;
|
let enDetails = null;
|
||||||
if (enSlug) {
|
if (enSlug) {
|
||||||
const enUrl = `https://kickass-anime.ro/${cleanSlug}/ep-${number}-${enSlug}`;
|
const enUrl = `https://kaa.lt/${cleanSlug}/ep-${number}-${enSlug}`;
|
||||||
const src = await fetchSrc(enUrl);
|
const src = await fetchSrc(enUrl);
|
||||||
if (src) {
|
if (src) {
|
||||||
enDetails = await fetchDetails(src);
|
enDetails = await fetchDetails(src);
|
||||||
@@ -141,7 +141,7 @@ async function extractStreamUrl(url) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
const jaUrl = `https://kickass-anime.ro/${cleanSlug}/ep-${number}-${jaSlug}`;
|
const jaUrl = `https://kaa.lt/${cleanSlug}/ep-${number}-${jaSlug}`;
|
||||||
const jaSrc = await fetchSrc(jaUrl);
|
const jaSrc = await fetchSrc(jaUrl);
|
||||||
let subtitle = "https://placeholder.com/subtitles.vtt";
|
let subtitle = "https://placeholder.com/subtitles.vtt";
|
||||||
if (jaSrc) {
|
if (jaSrc) {
|
||||||
|
|||||||
Reference in New Issue
Block a user