snobu / destreamer

Save Microsoft Stream videos for offline enjoyment.
MIT License
2.36k stars 440 forks source link

Request feature for the upcoming version of destreamer: downloading all videos from a group #241

Closed FraH90 closed 3 years ago

FraH90 commented 3 years ago

Hi guys, like I've written on the title I'm thinking from a lot of time of a feature that could be very, very helpful to me (and other too I think) for the upcoming version of destreamer (whatever we'll choose to name it)

Specifically, I'd like to download all the videos listed from a group, without manually entering every single URL of every single video in a text file (that's what I do now to download a bunch of videos from a single subject; in my university every subject has a different group for example, so the past semester every week or two I downloaded the new videos created in the week, but it was a long, long process to just copy/paste the links, figure it out which one you've downloaded and which one you've not, etcetera).

So I think that it will be very, very usefull if destreamer could automatically retrive all the URLs in a MS Stream group, from a link like this:

https://web.microsoftstream.com/group/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx?view=videos

and let us choose which video we want to download and which not (or maybe just download them all, and skip the ones that are already find in the specified download directory)

What do you think? It's a possible thing?

PS Obviously this is a feature-request, not an issue, I don't know how to mark this as a feature-req on github

lukaarma commented 3 years ago

We already do that :P

I forgot to add it to the docs but I already implemented that like 2 months ago

Just run it against the same folder (leaving there the videos) and use the --skip option to skip downloading existing files and you are all done

FraH90 commented 3 years ago

We already do that :P

I forgot to add it to the docs but I already implemented that like 2 months ago

Just run it against the same folder (leaving there the videos) and use the --skip option to skip downloading existing files and you are all done

Thats really awesome :D So I just need to put the url of the group as a parameter (like if I'm putting the url of a single video), and it will download all the videos uploaded on the group? _

lukaarma commented 3 years ago

Yes it should

lukaarma commented 3 years ago

Did it work @FraH90?

FraH90 commented 3 years ago

Did it work @FraH90?

YES! It seems to perfectly work, that's great!

Just a thing unrelated with this stuff.. after a while (I guess like after it does expire an hour from when you've started the download of the group) it returns an HTTP 401 error or something like that.

That is related to the token-cache thing that needs to be updated after an hour? Because however if I launch again the same command (with --skip parameter) after the error it does refresh the token cache and it goes on, downloading the rest of the video from the group.

There is a way of automatically refreshing the token cache? Because I see that you have implemented a mechanism that doesn't require putting in the password again (I'm using -k parameter), you just need to open the browser again and it automatically refresh the acces. Can't be this done automatically, so we don't need to restart the download when there are a lot of videos in the group?

lukaarma commented 3 years ago

A quick and dirty fix for the 401 is to use the -x option that disable the tumbnail because it's that that's causing the error

There is a pull request (#244) that will fix that but I'm waiting on @snobu for that

FraH90 commented 3 years ago

A quick and dirty fix for the 401 is to use the -x option that disable the tumbnail because it's that that's causing the error

There is a pull request (#244) that will fix that but I'm waiting on @snobu for that

Ok got it, thank you :) Guess we can close this "issue" then!

lukaarma commented 3 years ago

We sure can