Coder Social home page Coder Social logo

riimuru / gogoanime-api Goto Github PK

View Code? Open in Web Editor NEW
671.0 671.0 233.0 833 KB

Anime Streaming, Discovery API made with Cheerio and Express. Uses data from Gogoanime

License: MIT License

JavaScript 94.93% Procfile 0.04% Dockerfile 4.47% TypeScript 0.55%
anime anime-api anime-list anime-scraper anime-search anime-streaming api expressjs gogoanime gogoanime-api nodejs rest-api scraper scraping streaming streaming-api web-scraping

gogoanime-api's People

Contributors

0zul avatar alizeruncaged avatar dank-del avatar dependabot[bot] avatar dhvitop avatar riimuru avatar rohitxdev avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

gogoanime-api's Issues

API not loading

Describe the bug

Api is not working it is giving a ERR_NAME_NOT_RESOLVED error saying it doesn't exist
https://gogoanime.consumet.org/
This one.. Is the api changed or something?

Expected behavior

It should have worked properly

Actual behavior

But instead, it is giving DNS error. The base api is not working

Additional context

No response

Fembed Scrape is not working with API host online but host local will work

If hosting API on Hiroku or some where else it not working.
Fembed have a redirector which only allow access video source from request IP

Not working case

Local --> API online --> Fembed
then 
local --> Fembed source

Working case

[ Local --> API Local ] --> Fembed
then 
local --> Fembed source

The token have an IP info like /14.192.0.0/202/*

I still thinking how to solve this problem, if host API online

notice me senpai

thank you very much for making the api๐Ÿ™‡โ€โ™‚๏ธ

Some Animes not working

First of all, HI! The server/page of gogoplay/embedplus only gives the m3e8 video in new anime(s), In some old animes/ before 20th feb released anime(s) doesn't give m3e8 video it uses the streamsb embed.

[Not Issue] Downloadlink

Hi,
This project is so good, thanks for publish it
I tried many ways to get direct download link but i didnt find any
Can you do this?

Upcoming Anime

is there a way to filter out anime that are upcoming, like Overlord IV?
currently both recent_episodes and top_airing show Overlord and a few others, which arent released yet
and it kinda breaks my code right now as i dont know how to handle them

Try a different source

As of right now you are scraping the anime from one of the gogoanime sites which works fine. As you know they change their domain pretty frequently so would it not be a better idea to get it straight from the source itself?

referer

Hello, thanks for updating the code, can you teach me how can I put it in jwplayer/plyr.io together with the referer? cause i have issue in having error 403 origin issue, im using php curl and already insert the referer but no luck still error 403.

Request via ID too

Hi brother, id like to request if possible to get streaming url via embed id too.
thanks

some episodes are not loading

Describe the bug

i can get the link and every thing but when i try to play it using the plyr video player it is not working

Expected behavior

this should happen when i am giving the link to plyr to play it should play but it is taking forever to load

Actual behavior

data = requests.get(f"https://gogoanime.consumet.org/vidcdn/watch/{epid}")
data = data.content.decode()
data = json.loads(data)
episodelink = data["sources"][0]["file"]

this is my code when the varibale of epid is "one-piece-episode-1" the link for streaming is coming but when i am using the link to play it using plyr video player it is taking forever to load but when the variable epid id "one-piece-episode-1045" it is working like butter. same is happening for jjk, jjk sub is not playing but the dub is playing.

Additional context

And also the documentation for https://docs.consumet.org/ please complete this like the zoro part and add working code for every method.

Docker : Error when run it

Describe the bug

Application not running

Expected behavior

Running application

Actual behavior

bug in the log docker and stop app with this message : exec /usr/local/bin/docker-entrypoint.sh: exec format error

Additional context

I try to run it with Raspberry pi, i'm not sur it's a cause.

NEW API ๐ŸŽ‰!!

NEW API (v2) ๐ŸŽ‰

I have made a new api and a nodejs library (called consumet) for developers to use in their projects. This new api/library is able to support any piracy site that is for anime, manga, books, light novels, movie/tvshows, comics, and even custom meta providers like mapping anilist -> gogoanime -> kitsu, or tmbd -> movie-database.

Currently supported sites

Anime
Manga
Books
Light Novels
Movie/TV Shows
Comics
Personal Meta Providers
  • Anilist - Mapping anilist -> (piracy anime source) -> kitsu

How to get started?

Join the discord server for support and help.



Note:

Your feedback and suggestions are very welcome. Please open an issue or join the discord server.
This project will still be maintained.

Not working

Hi, I have tried this URL but it seems not working.
sabiiro-no-armor-reimei-episode-12

update base url

Describe the bug

This provider not working

Expected behavior

please update base url

Actual behavior

please update base url

Additional context

base url error

Not getting video url

{"error":{"message":"Request failed with status code 403","name":"Error","stack":"Error: Request failed with status code 403\n at createError (/app/node_modules/axios/lib/core/createError.js:16:15)\n at settle (/app/node_modules/axios/lib/core/settle.js:17:12)\n at IncomingMessage.handleStreamEnd (/app/node_modules/axios/lib/adapters/http.js:293:11)\n at IncomingMessage.emit (node:events:538:35)\n at endReadableNT (node:internal/streams/readable:1345:12)\n at processTicksAndRejections (node:internal/process/task_queues:83:21)","config":{"transitional":{"silentJSONParsing":true,"forcedJSONParsing":true,"clarifyTimeoutError":false},"transformRequest":[null],"transformResponse":[null],"timeout":0,"xsrfCookieName":"XSRF-TOKEN","xsrfHeaderName":"X-XSRF-TOKEN","maxContentLength":-1,"maxBodyLength":-1,"headers":{"Accept":"application/json, text/plain, /","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36","Referer":"https://goload.pro/streaming.php?id=MjU2MTU=&title=Naruto+Episode+220&typesub=SUB","X-Requested-With":"XMLHttpRequest"},"method":"get","url":"\n https://goload.pro/encrypt-ajax.php?id=xTlavrFQ+zdVqXSQyrtL0A==&alias=MjU2MTU="},"status":403}}

502 Server Error on RapidApi-Gogoanime

Describe the bug

RapidApi Error

Expected behavior

200 Error:
Info:string

Actual behavior

502 Error:
messages:"The API is unreachable, please contact the API provider"
info:"Your Client (working) ---> Gateway (working) ---> API (not working)"

Additional context

No response

Parse anime details via episode slug or parse the anime slug via episode slug

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

I've created an anime streaming website using different anime databases such as Anilist and Kitsu; getting the anime to match up has proven to be a struggle, as all of them have different IDs for each anime. I have found solutions to most of the problems, but sometimes Gogoanime has discrepancies when naming episode/anime slugs, making it difficult to parse the needed information when all I have is an episode slug.

Describe the solution you'd like
A clear and concise description of what you want to happen.

I would like a new route to be made that takes in an episode slug and parses either the anime slug so I can use the anime details route to get information or for the new route itself just to give anime details based on the episode slug.

I think this can be implemented by scraping the watch page of whichever episode slug is inputted and then parsing the "anime info:" URL and getting the context params for the animeslug.

Here is an example of the issue:

Anime Slug: tate-no-yuusha-no-nariagari-2nd-season
Episode slug: tate-no-yuusha-no-nariagari-season-2-episode-1

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

I've tried a few solutions that somewhat work but don't cover all use cases as naming varies between databases.

  1. Removing the -episode-x from context params and using anime details route (Usually works but doesn't in some cases)
  2. Removing the -episode-x from context params and searching on a different database for a name and then using the searching route to find the anime slug to search with.

Additional context
Add any other context or screenshots about the feature request here.
WM-Screenshots-20220727122339

streaming links download a 6kb m3u8 file that is not openable

First of all, thank you for the work you are doing.
I am currently trying to create a multi platform anime app and want to use your api for the streamlinks.
but as the title says, the stream links instantly start a downoad that is 6kb in size called master.m3u8

Api is not deploying

Describe the bug

I am trying to deploy this API on my server but when I run npm start using the terminal it says the express server is listening but the website is not loading on the port.

Then I tried to run this API on Plesk with node,js extension it is not responding when I ran npm start it stuck on loading and did not respond to any error or success text. when I check the port from the terminal it shows that the port is used but the website is still not running on that port.

Adding { animeId } property when getting latest released anime

Is your feature request related to a problem? Please describe.
Lacking of { animeId } property makes it a little bit hard to get to the latest anime page if youre using Next because it's necessary to get { animeId } to have dynamic routes.

Describe the solution you'd like
For now im just cutting the { episodeId } property for it to be just like { animeId }. Idk how long this will work because im not really sure if that would work for every anime title.

Describe alternatives you've considered
Adding a simple field of { animeId } property when getting latest episode released would be nice to have :)

How can I get animeId from episodeId?

Is your feature request related to a problem? Please describe.
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

GET REQUEST for amount pages

Is it possible to create a get request for the amount of pages a category has. So for instance "POPULAR ONGOING UPDATE" has 29pages. I would really appreciate it if you could :)

retrieving video data for anime episode

Describe the bug

https://gogoanime.consumet.org/vidcdn/watch/naruto-episode-220 not working

Expected behavior

retrieving video data for anime episode

Actual behavior

{"error":{"message":"getaddrinfo ENOTFOUND gogohd.pro","name":"Error","stack":"Error: getaddrinfo ENOTFOUND gogohd.pro\n at Function.AxiosError.from (file:///workspace/node_modules/axios/lib/core/AxiosError.js:89:14)\n at RedirectableRequest.handleRequestError (file:///workspace/node_modules/axios/lib/adapters/http.js:515:25)\n at RedirectableRequest.emit (node:events:513:28)\n at ClientRequest.eventHandlers. (/workspace/node_modules/follow-redirects/index.js:14:24)\n at ClientRequest.emit (node:events:513:28)\n at TLSSocket.socketErrorListener (node:_http_client:494:9)\n at TLSSocket.emit (node:events:513:28)\n at emitErrorNT (node:internal/streams/destroy:157:8)\n at emitErrorCloseNT (node:internal/streams/destroy:122:3)\n at processTicksAndRejections (node:internal/process/task_queues:83:21)","config":{"transitional":{"silentJSONParsing":true,"forcedJSONParsing":true,"clarifyTimeoutError":false},"transformRequest":[null],"transformResponse":[null],"timeout":0,"xsrfCookieName":"XSRF-TOKEN","xsrfHeaderName":"X-XSRF-TOKEN","maxContentLength":-1,"maxBodyLength":-1,"env":{"Blob":null},"headers":{"Accept":"application/json, text/plain, /","User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/97.0.4692.71 Safari/537.36","Accept-Encoding":"gzip, deflate, br"},"method":"get","url":"https://gogohd.pro/streaming.php?id=MjU2MTU=&title=Naruto+Episode+220&typesub=SUB"},"code":"ENOTFOUND","status":null}}

Additional context

No response

Get request for the comments

if it is possible and you have some free time could you look into adding the comments to your api? With a structure like

comment =
{
comment_id: 1,
date or days ago doesnt really matter
comment: "blablabla",
user: "user",
replyTo: "commentId" //or can be null if its not a reply
}

get total pages in response

so im working with your api and i want the user to go in to a section where it shows all the Popular Animes and the current page and the last page.
What im missing is a response from the api that gives all the anime on the page but also gives me what the last page is.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.