|
|
|
@ -1,9 +1,9 @@
|
|
|
|
|
import urls from './urls';
|
|
|
|
|
import { requestGot } from './requestCall';
|
|
|
|
|
import AnimeModel, { Anime } from '../database/models/anime.model';
|
|
|
|
|
import {requestGot} from './requestCall';
|
|
|
|
|
import AnimeModel, {Anime} from '../database/models/anime.model';
|
|
|
|
|
import crypto from 'crypto';
|
|
|
|
|
import util from 'util';
|
|
|
|
|
import { redisClient } from '../database/connection';
|
|
|
|
|
import {redisClient} from '../database/connection';
|
|
|
|
|
|
|
|
|
|
// @ts-ignore
|
|
|
|
|
redisClient.get = util.promisify(redisClient.get);
|
|
|
|
@ -200,7 +200,7 @@ export const getAnimeCharacters = async (mal_id: number) => {
|
|
|
|
|
|
|
|
|
|
data = await requestGot(
|
|
|
|
|
`${urls.BASE_JIKAN}anime/${mal_id}/characters_staff`,
|
|
|
|
|
{ parse: true, scrapy: false },
|
|
|
|
|
{parse: true, scrapy: false},
|
|
|
|
|
);
|
|
|
|
|
} catch (err) {
|
|
|
|
|
return err;
|
|
|
|
@ -244,7 +244,7 @@ const getPosterAndType = async (
|
|
|
|
|
) => {
|
|
|
|
|
if (id) {
|
|
|
|
|
const queryRes: Anime | null = await AnimeModel.findOne({
|
|
|
|
|
id: { $eq: id },
|
|
|
|
|
id: {$eq: id},
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
return [queryRes?.poster, queryRes?.type];
|
|
|
|
@ -252,7 +252,7 @@ const getPosterAndType = async (
|
|
|
|
|
|
|
|
|
|
if (mal_id) {
|
|
|
|
|
const queryRes: Anime | null = await AnimeModel.findOne({
|
|
|
|
|
mal_id: { $eq: mal_id },
|
|
|
|
|
mal_id: {$eq: mal_id},
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
return [queryRes?.poster, queryRes?.type];
|
|
|
|
@ -471,7 +471,7 @@ export const monoschinosInfo = async (
|
|
|
|
|
id: string | undefined,
|
|
|
|
|
mal_id: number,
|
|
|
|
|
) => {
|
|
|
|
|
let $: cheerio.Root;
|
|
|
|
|
let info;
|
|
|
|
|
let episodeList: any[] = [];
|
|
|
|
|
let extraInfo: any;
|
|
|
|
|
|
|
|
|
@ -488,9 +488,9 @@ export const monoschinosInfo = async (
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ = await requestGot(`${urls.BASE_MONOSCHINOS}anime/${id}`, {
|
|
|
|
|
scrapy: true,
|
|
|
|
|
parse: false,
|
|
|
|
|
info = await requestGot(`${urls.BASE_ARUPPI_MONOSCHINOS}anime/${id}`, {
|
|
|
|
|
scrapy: false,
|
|
|
|
|
parse: true,
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
/* Extra info of the anime */
|
|
|
|
@ -499,7 +499,6 @@ export const monoschinosInfo = async (
|
|
|
|
|
console.log(err);
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if ($!) {
|
|
|
|
|
if (extraInfo) {
|
|
|
|
|
let broadCastDate = new Date();
|
|
|
|
|
let dd: number, mm: string | number, yyyy: number;
|
|
|
|
@ -554,25 +553,12 @@ export const monoschinosInfo = async (
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$!('.SerieCaps a').each((index: number, element: cheerio.Element) => {
|
|
|
|
|
let episode: number;
|
|
|
|
|
|
|
|
|
|
$(element)
|
|
|
|
|
.attr('href')
|
|
|
|
|
?.split('-')
|
|
|
|
|
.forEach((item: any) => {
|
|
|
|
|
if (!isNaN(item)) {
|
|
|
|
|
episode = parseInt(item);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
for (const anime of info.episodes) {
|
|
|
|
|
episodeList.push({
|
|
|
|
|
episode: episode!,
|
|
|
|
|
id: `${$(element).attr('href')?.split('/')[3]}/${
|
|
|
|
|
$(element).attr('href')?.split('/')[4]
|
|
|
|
|
}`,
|
|
|
|
|
});
|
|
|
|
|
episode: anime.no,
|
|
|
|
|
id: `ver/${anime.id}`,
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if (episodeList.length > 0) {
|
|
|
|
|
if (redisClient.connected) {
|
|
|
|
@ -595,9 +581,7 @@ export const monoschinosInfo = async (
|
|
|
|
|
} else {
|
|
|
|
|
return undefined;
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
return undefined;
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
export const tioanimeInfo = async (id: string | undefined, mal_id: number) => {
|
|
|
|
@ -957,7 +941,7 @@ async function desuServerUrl(url: string) {
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
$ = await requestGot(url, { scrapy: true, parse: false });
|
|
|
|
|
$ = await requestGot(url, {scrapy: true, parse: false});
|
|
|
|
|
} catch (err) {
|
|
|
|
|
return err;
|
|
|
|
|
}
|
|
|
|
|