Skip to main content

Retrieve and parse Steam leaderboards

Project description

steamleaderboards

Retrieve and parse Steam leaderboards

History

It was created with the Isaac Daily Run scoreboards in mind, but it can be used for other games that have a public leaderboard as well.

Usage

In code

To use steamleaderboards, first install it via PyPI:

$ # If you're using pip in a venv on 
$ .venv/bin/pip install steamleaderboards --upgrade
$ # If you're using poetry 
$ poetry add steamleaderboards

Then, create a LeaderboardGroup for the desired game.

import steamleaderboards as sl
lbgroup = sl.LeaderboardGroup(STEAM_APP_ID)

Once you have created the LeaderboardGroup, you can retrieve the desired leaderboards by using the LeaderboardGroup.get method.
You can specify the name, the display name or the id of the leaderboard to retrieve.

leaderboard_a = lbgroup.get(name=LEADERBOARD_NAME)
leaderboard_b = lbgroup.get(lbid=LEADERBOARD_ID)
leaderboard_c = lbgroup.get(display_name=LEADERBOARD_DISPLAY_NAME)

When you have the Leaderboard object, you can find all the entries in the Leaderboard.entries field, or you can search for a specific one through the Leaderboard.find_entry method.

all_scores = leaderboard_a.entries
my_score = leaderboard_a.find_entry(MY_STEAMID_1)
first_place_score = leaderboard_a.find_entry(rank=1)
last_place_score = leaderboard_a.find_entry(rank=-1)

In the terminal

To use steamleaderboards, first install it via PyPI:

$ # Using pipx
$ pipx install steamleaderboards

Then, you can use it to retrieve leaderboards for one or more Steam games via the terminal:

$ steamleaderboards --output_dir="./data" 440

This will download all leaderboards for Team Fortress 2, the game with the app id 440, to the ./data directory.

App ids for games can be found via SteamDB.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

steamleaderboards-1.0.0.tar.gz (4.6 kB view details)

Uploaded Source

Built Distribution

steamleaderboards-1.0.0-py3-none-any.whl (5.5 kB view details)

Uploaded Python 3

File details

Details for the file steamleaderboards-1.0.0.tar.gz.

File metadata

  • Download URL: steamleaderboards-1.0.0.tar.gz
  • Upload date:
  • Size: 4.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Linux/6.9.1-zen1-1-zen

File hashes

Hashes for steamleaderboards-1.0.0.tar.gz
Algorithm Hash digest
SHA256 6030b5afed2851c7ddc3da9364a56a782f0efed8c055e5eb65ea1e8686c80f23
MD5 2023b75e8b05930b0b2f7dff7dc4cf99
BLAKE2b-256 68b0c73bd104fd50b32fc5d8d171ed7893d3f1070f9f5a7f37924b7b57c34901

See more details on using hashes here.

File details

Details for the file steamleaderboards-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: steamleaderboards-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.5 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.8.3 CPython/3.12.3 Linux/6.9.1-zen1-1-zen

File hashes

Hashes for steamleaderboards-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 317904715087226c5da7bb91de3ae52d28d3e8e7cf0b0494d49f2676f6c016e0
MD5 3e08a384ffc5a47b2eeb332ec20247f2
BLAKE2b-256 b8f57f232e6192c63f96dc6bf394de6eb8fe62d7bb5d73d382da681bc137039c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page