hama3254 / Crunchyroll-Downloader-v3.0

Downloader for Crunchyroll
843 stars 108 forks source link

OffTopic Question #830

Closed codsec closed 10 months ago

codsec commented 10 months ago

Hi im developing a tool for Crunchyroll like yours but using python(tried node.js too) but i got zero success when detecting or getting the video episode, if u can i would like to know how exacly did u get the frame or link of the episode to make it downloadable, could u explain me a little bit? I would really appreciate your help and thanks in advance 😄

hama3254 commented 10 months ago

i would not start any new project with #740 in mind. The current version uses older APIs (again see #740) and i use curl for requests due to this : https://github.com/hama3254/Crunchyroll-Downloader-v3.0/issues/546#issuecomment-1284293732.

a TLDR would be, i use the cookies from the browser to call https://www.crunchyroll.com/auth/v1/token as POST with Post data grant_type and as value etp_rt_cookie for logged in users or client_id if the cookies don't contain a etp_rt_cookie.

This returns the HTTP Authorization with the type Bearer to GET the objects json fromhttps://www.crunchyroll.com/content/v2/cms/objects/G69PX0W3Y?locale=[CR-UI-lang]

You replace the G69PX0W3Y with the part of the url after the watch/

this is still mostly the same on CR right now but the actuall video API has been changed (aka #740 again) but the link for is still in the objects json as streams_link and for my example with this content "/content/v2/cms/videos/G25FVQD3Q/streams"

it is also called the same way as the objects as GET with the auth/v1/token as Bearer Authorization.