From 821d2cafdffd091dd0e3c0d4df2e3e10c9f0c4ee Mon Sep 17 00:00:00 2001 From: Angelo E De Zoysa <32593782+user4302@users.noreply.github.com> Date: Sun, 24 Sep 2023 18:49:10 +0530 Subject: [PATCH] feat(route): add gogoanimehd (#13340) * add gogoanime * updated data being sent * update radar.js * update for loop to a map * update docs path change from multimedia to anime * add docs for gogoanimehd * change the title to a string, move the episode to the description * Update lib/v2/gogoanimehd/radar.js rename title value in radar.js --------- --- lib/v2/gogoanimehd/maintainer.js | 3 +++ lib/v2/gogoanimehd/radar.js | 13 ++++++++++ lib/v2/gogoanimehd/recent-releases.js | 37 +++++++++++++++++++++++++++ lib/v2/gogoanimehd/router.js | 3 +++ website/docs/routes/anime.md | 6 +++++ 5 files changed, 62 insertions(+) create mode 100644 lib/v2/gogoanimehd/maintainer.js create mode 100644 lib/v2/gogoanimehd/radar.js create mode 100644 lib/v2/gogoanimehd/recent-releases.js create mode 100644 lib/v2/gogoanimehd/router.js diff --git a/lib/v2/gogoanimehd/maintainer.js b/lib/v2/gogoanimehd/maintainer.js new file mode 100644 index 000000000..196d9d7d7 --- /dev/null +++ b/lib/v2/gogoanimehd/maintainer.js @@ -0,0 +1,3 @@ +module.exports = { + '/recent-releases': ['user4302'], +}; diff --git a/lib/v2/gogoanimehd/radar.js b/lib/v2/gogoanimehd/radar.js new file mode 100644 index 000000000..349347de3 --- /dev/null +++ b/lib/v2/gogoanimehd/radar.js @@ -0,0 +1,13 @@ +module.exports = { + 'gogoanimehd.io': { + _name: 'Gogoanime', + developer: [ + { + title: 'Recent Releases', + docs: 'https://docs.rsshub.app/routes/anime#gogoanimehd', + source: ['/'], + target: '/gogoanimehd/recent-releases', + }, + ], + }, +}; diff --git a/lib/v2/gogoanimehd/recent-releases.js b/lib/v2/gogoanimehd/recent-releases.js new file mode 100644 index 000000000..9e4ec95c6 --- /dev/null +++ b/lib/v2/gogoanimehd/recent-releases.js @@ -0,0 +1,37 @@ +const got = require('@/utils/got'); +const cheerio = require('cheerio'); + +module.exports = async (ctx) => { + const rootUrl = 'https://gogoanimehd.io'; + + const response = await got({ + method: 'get', + url: rootUrl, + }); + + const $ = cheerio.load(response.data); + const recentReleases = $('.last_episodes'); + const listItems = $(recentReleases).find('li'); + + const arrayOfItems = listItems.toArray().map((item) => { + const title = $(item).find('.name a').attr('title'); + const episode = $(item).find('.episode').text(); + const link = $(item).find('.name a').attr('href'); + const img = $(item).find('.img a img').attr('src'); + + const formattedDescription = `