ppy / osu-api

Public API for accessing osu! related data.
321 stars 16 forks source link

Downloading mapsets from API #161

Open Erinaaaaaaa opened 7 years ago

Erinaaaaaaa commented 7 years ago

My friends and I are trying to make a collection manager for osu! We store collections in our own file format (that obviously doesn't contain the mapsets) and we have to download the mapsets in order to successfully import the mapset. As we can't directly download from the website without logging in, we have to use a beatmap mirror (in our case bloodcat) that doesn't host pending maps, which is a problem to restore the collections as its creator intended them to be. We could make a mappack out of the collection and then import it, but as downloading is the most convenient way, we were wondering if we could download from osu! servers without explicitly logging in (users privacy and stuff)

tl;dr i need to download whole mapset with song and everything from my collection manager avoiding if possible logging in as mirrors don't host pending maps

Syriiin commented 7 years ago

You could just do a /api/get_beatmaps request using s=SET_ID to get all the beatmap_ids in the set, and then just download the beatmaps returned individually via https://osu.ppy.sh/osu/BEATMAP_ID which doesn't require a login. Unless I misunderstood what you were trying to do

Erinaaaaaaa commented 7 years ago

does using this link download the whole mapset (song and everything) ?

Syriiin commented 7 years ago

Ah no. Just the beatmap file. Didn't really take into account the actual use case :/

christopher-dG commented 6 years ago

Bump, not having a way to programmatically download beatmaps even if you're authenticated is quite sad. There are lots of cool integrations that this would unlock.

Ezoda commented 6 years ago

It's possible you just need a server and do the magic behind it. It's working on our end pretty well. (osustats)

christopher-dG commented 6 years ago

That's not really the point, public APIs are there to avoid having to do that kind of magic. And I can't back this up but I'm pretty sure peppy does not approve of any of the current methods being used.

Erinaaaaaaa commented 6 years ago

In addition, I had found something much more interesting than the API to retrieve data but I was told not to use it and use the API instead, so as you just said said, I doubt they'll approve that on the long term. I assume they're ok with it because there's no other way as of now..?