0% found this document useful (0 votes)
113 views

Kisa

This document describes the configuration of an anime module that scrapes data from the AnimeKisa website, including the module name, description, and methods for retrieving episode lists, search results, and individual anime information pages. It provides JavaScript code to parse the site's HTML and output structured data for each module section.

Uploaded by

xime
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
113 views

Kisa

This document describes the configuration of an anime module that scrapes data from the AnimeKisa website, including the module name, description, and methods for retrieving episode lists, search results, and individual anime information pages. It provides JavaScript code to parse the site's HTML and output structured data for each module section.

Uploaded by

xime
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as TXT, PDF, TXT or read online on Scribd
You are on page 1/ 3

{ "moduleName": "Animekisa", "moduleInitials": "AKS", "moduleDesc": "This is

a module to get data from AnimeKisa", "developer": "uknown", "moduleID": "321",


"moduleImage": "https://b.thumbs.redditmedia.com/wxlKJ7e8Z0TMGQUleoDAXdq6rNh-
8pSKOSIIpbeCT0g.png", "moduleVersion": "1.6", "moduleLenguage": "ENG",
"moduleHasVideos": "true", "randomizeUserAgent": "false", "baseURL":
"https://animekisa.tv/", "mainPageLeftTitle": "Last Episodes",
"mainPageRightTitle": "Last Animes", "blackListed": [ "" ], "mainPage": [
{ "request": "https://animekisa.tv/", "method": "get", "headers":
[ { "key": "", "value": "" } ],
"extraInfo": [ { "value": "" } ],
"loadJavascript": "false", "javaScript": " function Header(key,value)
{ this.key = key; this.value = value; } function ExtraInfo(value) { this.value =
value; } function Output(lastEpisodes,lastAnimes) { this.lastEpisodes =
lastEpisodes; this.lastAnimes = lastAnimes; } function
LastAnimes(moduleID,image,link,title) { this.moduleID = moduleID; this.image =
image; this.link = link; this.title = title; } function
LastEpisodes(moduleID,image,link,title,episode) { this.moduleID = moduleID;
this.image = image; this.link = link; this.title = title; this.episode = episode; }
function
MainPageObject(request,headers,method,extraInfo,loadJavascript,javaScript,output) {
this.request = request; this.headers = headers; this.method = method;
this.extraInfo = extraInfo; this.loadJavascript = loadJavascript; this.javaScript =
javaScript; this.output = output; } var moduleID = '321'; var mainPageObject; var
output; var headers = []; var lastAnimes = []; var lastEpisodes = []; var extraInfo
= []; var savedData = document.getElementById('katsu-final-data'); var eps =
document.querySelectorAll('.episode-box'); for (var i = 0; i < eps.length; ++i)
{ try { var title = eps[i].querySelector('.title-box-2').innerText; var link =
eps[i].querySelector('a').href; var image = eps[i].querySelector('img').src; var
episode = eps[i].querySelector('.centerv2').innerText.split('🕙')[0].split(' ');
episode.pop(); episode[1].replace(' ',''); var realEp = parseInt(episode[1]);
episode = episode[0]; episode = episode + ' ' + realEp; var ep = new
LastEpisodes(moduleID,'https://animekisa.tv/'+
image,'https://animekisa.tv/'+link,title,episode); lastEpisodes.push(ep); } catch
(err) { console.log(err); } } var animes =
document.querySelector('.overflow500').querySelectorAll('a'); for (var i = 0; i <
animes.length; ++i) { var link = animes[i].href; var image =
'https://animekisa.tv/img/coversjpg/'+ link + '.jpg'; var title =
animes[i].innerText; var anime = new
LastAnimes(moduleID,image,'https://animekisa.tv/' + link,title);
lastAnimes.push(anime); } while (lastAnimes.length % 3 != 0)
{ lastAnimes.push(lastAnimes[0]); } while (lastEpisodes.length % 2 != 0)
{ lastEpisodes.push(lastEpisodes[0]); } output = new
Output(lastEpisodes,lastAnimes); headers.push(new Header('',''));
extraInfo.push(new ExtraInfo('')); mainPageObject = new
MainPageObject('',headers,'',extraInfo,'','',output); var finalJson =
JSON.stringify(mainPageObject); savedData.innerHTML = finalJson;", "output":
{ "lastEpisodes": [ { "moduleID": "0",
"image": "", "link": "", "title": "",
"episode": "" } ], "lastAnimes": [ {
"moduleID": "0", "image": "", "link": "",
"title": "" } ] } } ], "search":
[ { "request": "https://animekisa.tv/search?q=<searched>",
"method": "get", "headers": [ { "key": "",
"value": "" } ], "separator": "+", "extraInfo": [
{ "value": "" } ], "loadJavascript": "false",
"javaScript": "function Header(key, value) { this.key = key; this.value =
value;}function ExtraInfo(value) { this.value = value;}function Output(moduleID,
image, link, title, type, voice, stars) { this.moduleID = moduleID; this.image =
image; this.link = link; this.title = title; this.type = type; this.voice = voice;
this.stars = stars;}function SearchObject(request, method, headers, separator,
extraInfo, loadJavascript, javaScript, output) { this.request = request;
this.method = method; this.headers = headers; this.separator = separator;
this.extraInfo = extraInfo; this.loadJavascript = loadJavascript; this.javaScript =
javaScript; this.output = output;}function getType(title) { if
(title.includes('Dubbed')) { return 'Dub'; } return 'Sub';}var moduleID = '321';var
searchPageObject;var output = [];var headers = [];var extraInfo = [];var savedData
= document.getElementById('katsu-final-data');var animes =
document.querySelectorAll('.an');for (var i = 0; i < animes.length; ++i) { try
{ var link = animes[i].href; var image = animes[i].querySelector('.coveri').src;
var title = animes[i].querySelector('.similardd').innerHTML; if (image == '')
{ continue; } var anime = new Output(moduleID, 'https://animekisa.tv' + image,
'https://animekisa.tv' + link, title, 'Anime', getType(title), '★★★★★');
output.push(anime); } catch (err) { console.log(err); }}headers.push(new Header('',
''));extraInfo.push(new ExtraInfo(''));searchPageObject = new SearchObject('', '',
headers, '+', extraInfo, '', '', output);var finalJson =
JSON.stringify(searchPageObject);savedData.innerHTML = finalJson;", "output":
[ { "moduleID": "0", "image": "", "link": "",
"title": "", "type": "", "voice": "", "stars": ""
} ] } ], "info": [ { "request": "get", "method":
"get", "headers": [ { "key": "", "value": ""
} ], "extraInfo": [ { "value": "" } ],
"loadJavascript": "false", "javaScript": "function Header(key, value)
{ this.key = key; this.value = value;}function ExtraInfo(value) { this.value =
value;}function Output(moduleID, image, link, title, description, genres, type,
status, episodes) { this.moduleID = moduleID; this.image = image; this.link = link;
this.title = title; this.description = description; this.genres = genres; this.type
= type; this.status = status; this.episodes = episodes;}function Episodes(link,
moduleID, isDecodable) { this.link = link; this.moduleID = moduleID;
this.isDecodable = isDecodable;}function InfoObject(request, method, headers,
extraInfo, loadJavascript, javaScript, output) { this.request = request;
this.method = method; this.headers = headers; this.extraInfo = extraInfo;
this.loadJavascript = loadJavascript; this.javaScript = javaScript; this.output =
output;}var savedData = document.getElementById('katsu-final-data');var moduleID =
'321';var infoObject;var output;var headers = [];var extraInfo = [];var episodes =
[];var type = ' ';var status = '';var genres = [];var desc = '';var parsedJson =
JSON.parse(savedData.innerHTML);var title =
document.querySelector('.infodesbox').querySelector('h1').innerText;desc =
document.querySelector('.infodesbox').querySelector('.infodes2').innerText.replace(
title, '').replace('\\n', '');var image =
document.querySelector('.posteri').src;var genre =
document.querySelectorAll('.textc');for (var x = 0; x < genre.length; x++) { var
text = genre[x].innerText; if (text.includes(', ')) { var finalGenres =
text.split(', '); for (var y = 0; y < finalGenres.length; y++)
{ genres.push(finalGenres[y]); } }}var chapters =
document.querySelectorAll('.infovan');for (var x = 0; x < chapters.length; x++)
{ var fixedLink = chapters[x].href; episodes.push(new
Episodes('https://animekisa.tv/' + fixedLink, moduleID,
'false'));}episodes.reverse();output = new Output(moduleID, 'https://animekisa.tv/'
+ image, parsedJson.request, title, desc, genres, type, status,
episodes);extraInfo.push(new ExtraInfo(''));headers.push(new Header('',
''));infoObject = new InfoObject('', 'get', headers, extraInfo, '', '', output);var
finalJson = JSON.stringify(infoObject);savedData.innerHTML = finalJson;",
"output": { "moduleID": "0", "image": "", "link": "",
"title": "", "description": "", "genres": [ "" ],
"type": "", "status": "", "episodes":
[ { "link": "", "moduleID": "",
"isDecodable": "false" } ] } } ], "episodes": [
{ "request": "empty", "method": "get", "headers": [ {
"key": "key", "value": "value" } ], "extraInfo": [
{ "value": "" } ], "loadJavascript": "false",
"javaScript": " function Header(key,value) { this.key = key; this.value = value; }
function ExtraInfo(value) { this.value = value; } function
Output(link,linkIdentifier,moduleID,isDecodable,headers) { this.link = link;
this.linkIdentifier = linkIdentifier; this.moduleID = moduleID; this.isDecodable =
isDecodable; this.headers = headers; } function
EpisodeObject(request,method,headers,extraInfo,loadJavascript,javaScript,output)
{ this.request = request; this.method = method; this.headers = headers;
this.extraInfo = extraInfo; this.loadJavascript = loadJavascript; this.javaScript =
javaScript; this.output = output; } var moduleID = '321'; var episodeObject; var
output = []; var headers = []; var extraInfo = []; var videoHeaders = [new
Header('','')]; var savedData = document.getElementById('katsu-final-data'); var
scripTags = document.querySelectorAll('p'); for (var x = 0; x < scripTags.length;
x++) { try { var textScript = scripTags[x].innerHTML; if (textScript.includes('var
player = [];')) { var lol = textScript.split('var VidStreaming ')[1].split('var
isMobile')[0]; var fixedLinks = lol.split('\"'); for (var y = 0; y<
fixedLinks.length;y++){ if (fixedLinks[y].includes('://')) { output.push(new
Output(fixedLinks[y],'',moduleID,'false',videoHeaders)); } } break; } } catch(err)
{ console.log(err); } } headers.push(new Header('','')); extraInfo.push(new
ExtraInfo('')); episodeObject = new
EpisodeObject('','',headers,extraInfo,'','',output); var finalJson =
JSON.stringify(episodeObject); savedData.innerHTML = finalJson;", "output": [
{ "link": "", "linkIdentifier": "", "moduleID": "",
"isDecodable": "false", "headers": [ { "key":
"key", "value": "value" } ] } ]
} ] }

You might also like