soraxas / echo360

Commandline tool for automated downloads of echo360 videos hosted by university
https://cs.tinyiu.com/echo360
MIT License
257 stars 50 forks source link

Option to download without logging in to echo360.org #53

Open soumdtt opened 2 years ago

soumdtt commented 2 years ago

Hi, is it possible to download echo360.org without logging into the usual log-in interface (eg. for publicly hosted videos)? As an example, is it possible to parse(and download) videos from this portal (https://echo360.org/section/af040c4a-11d1-4bf5-856a-97485e0be2ed/home)? These videos do not need credential to log-in to echo360 cloud. Thanks for any help.

soumdtt commented 2 years ago

This is the originating URL https://echo360.org/section/af040c4a-11d1-4bf5-856a-97485e0be2ed/home

soraxas commented 2 years ago

I don't think those are public links as both links request login details when I clicked on them

soumdtt commented 2 years ago

Hello, you are right! My, bad! Here are the public links: https://echo360.org/section/63154e84-3722-4d7a-a851-8248f569281c/public

soraxas commented 2 years ago

Can you clarify whether these videos works with the current repo? Or do you just want to avoid the extra login step?

soraxas commented 2 years ago

@soumdtt Is that some sort of one-off link or a link that embeds a token? It no longer works for me

soumdtt commented 2 years ago

@soraxas I’m not sure about your last comment. It is still working for me, though. Even if I copy and paste in a different computer, it works. Also, I will soon try out the link with the existing repo and report back ASAP as you suggested.

ghost commented 2 years ago

I also ran into this issue while trying to download publicly available videos (no echo360 account required) from URL https://echo360.org.uk/section/038aed3c-7365-479c-80ce-87a4fd2a37a6/public

I don't have an echo360 account, so I cannot perform a login in the Chrome selenium window, thus I cannot progress further with downloading the videos.

mkildemaa commented 1 year ago

Same here. I have a public link that does not require a login so I would wish to skip the login process with the script. Also this is quite time sensitive because I finished the course that I wish to download and I don't know how long this link will stay valid until videos are removed.

soraxas commented 1 year ago

The issue is not on not being able to skip the login process. If the course requires no login but has the same webpage structure as others, it would still work.

The problem is that (some of?) these login-less page has a different webpage structure. This program send a request to retrieve a json from the echo360 course, in order to retrieve the list of videos. See: https://github.com/soraxas/echo360/blob/1d01827e444e0871cb6cb031078c8e22c92a25f8/echo360/course.py#L60-L62

The json endpoint does not seems to exists for these sort of page

mkildemaa commented 1 year ago

The issue is not on not being able to skip the login process. If the course requires no login but has the same webpage structure as others, it would still work.

The problem is that (some of?) these login-less page has a different webpage structure. This program send a request to retrieve a json from the echo360 course, in order to retrieve the list of videos. See:

https://github.com/soraxas/echo360/blob/1d01827e444e0871cb6cb031078c8e22c92a25f8/echo360/course.py#L60-L62

The json endpoint does not seems to exists for these sort of page

Ok thanks for the info. I already got them downloaded with geckoDM Chrome extension.