81 lines
2.2 KiB
Markdown
81 lines
2.2 KiB
Markdown
# playlist helper
|
|
|
|
This is the old readme that explains the scoresaber functions.
|
|
|
|
## Usage
|
|
|
|
```sh
|
|
pipx install pleb-saberlist
|
|
player_scores_by_stars
|
|
leaderboard_songs_by_stars
|
|
```
|
|
|
|
### Examples
|
|
|
|
```sh
|
|
leaderboard_songs_by_stars
|
|
Enter the minimum starlevel to include on the playlist (Default: 6.0): 6.2
|
|
Enter the maximum starlevel to include on the playlist (Default: 6.3):
|
|
Enter the filename for the playlist (Default: SS Leaderboard 6.2★):
|
|
2024-07-09 16:06:13 DEBUG: Using selector: EpollSelector
|
|
2024-07-09 16:06:13 INFO: Fetching page 1/-1 of leaderboards
|
|
2024-07-09 16:06:13 INFO: Got 14 songs from leaderboard page 1
|
|
2024-07-09 16:06:13 INFO: Fetching page 2/3 of leaderboards
|
|
2024-07-09 16:06:14 INFO: Got 14 songs from leaderboard page 2
|
|
2024-07-09 16:06:14 INFO: Fetching page 3/3 of leaderboards
|
|
2024-07-09 16:06:14 INFO: Got 3 songs from leaderboard page 3
|
|
2024-07-09 16:06:14 INFO: Playlist written to SS Leaderboard 6.2★.bplist
|
|
```
|
|
|
|
Player songs by stars:
|
|
|
|
```sh
|
|
player_scores_by_stars
|
|
2024-07-09 16:07:04 DEBUG: Using selector: EpollSelector
|
|
Enter the playerid (Default: 76561199407393962):
|
|
Enter the minimum starlevel to include on the playlist (Default: 5):
|
|
Enter the maximum starlevel to include on the playlist (Default: 6.0): 5.5
|
|
Enter the filename for the playlist (Default: Replay SS 5.0★):
|
|
2024-07-09 16:07:14 INFO: Fetching page 1/-1 of player scores
|
|
2024-07-09 16:07:15 INFO: Got 100 scores from page 1
|
|
...
|
|
2024-07-09 16:07:19 INFO: Fetching page 8/9 of player scores
|
|
2024-07-09 16:07:20 INFO: Got 96 scores from page 8
|
|
2024-07-09 16:07:20 INFO: Playlist written to Replay SS 5.0★.bplist
|
|
|
|
```
|
|
|
|
## Development
|
|
|
|
Clone the repo and install dependencies into a local virtual environment:
|
|
|
|
```bash
|
|
pip install --upgrade pip
|
|
pip install --editable .
|
|
```
|
|
|
|
## Resources
|
|
|
|
* [Beatleader API](https://beatleader.xyz/developer)
|
|
* [ScoreSaber API](https://docs.scoresaber.com/)
|
|
|
|
## Tips
|
|
|
|
Count results
|
|
|
|
```shell
|
|
jq '.songs | length' < playlist.bplist
|
|
```
|
|
|
|
Avoid printing covers in console.
|
|
|
|
```shell
|
|
jq 'del(.image)' < playlist.bplist
|
|
```
|
|
|
|
Find the most common mappers the player has played:
|
|
|
|
```shell
|
|
jq -r '.songs[].levelAuthorName' *.bplist | sort | uniq -c | sort -rn | head -n 10
|
|
```
|