Skip to main content

Nicely packed tools to work with Steam APIs

Project description

https://github.com/idlesign/steampak

https://img.shields.io/pypi/v/steampak.svg https://img.shields.io/pypi/dm/steampak.svg https://img.shields.io/pypi/l/steampak.svg

This software is not affiliated with Valve, Steam, or any of their partners.

Description

Nicely packed tools to work with Steam APIs

  • Steam library bindings for Python programming language.

    It allows your game to interact with features offered by Steam client and Steam platform.

  • Tools for querying Steam Web resources.

    Allowing access to applications and market data from within your Python application.

  • Command line utility.

    To reach and analyse publicly available applications and market information.

Steam API bindings example

A short example of API provided by Steam library, just to give a taste of it:

from steampak import SteamApi

# A path to steam library file. This library should be provided with your game.
# Library for various OS is distributed with Steam SDK available for Steam partners
# at https://partner.steamgames.com/
LIBRARY_PATH = '/home/me/my_steam_game/libsteam_api.so'

# Your application (game) identifier provided by Steam.
# Pass it as a parameter or put `steam_appid.txt` file with that ID in your game folder.
APP_ID = 480  # We use `Spacewar` ID. (This game is provided with SDK).

api = SteamApi(LIBRARY_PATH, app_id=APP_ID)

# Let's print some friend names:
for user in api.friends():
    print(user.name)

# Current app achievements progress:
for ach_name, ach in api.apps.current.achievements():
    print('%s (%s): %s' % (ach.title, ach_name, ach.get_unlock_info()))

# Do not forget to shutdown when done:
api.shutdown()

Command line client example

; Get prices and simple analysis for Half-Life 2 cards.
$ steampak app 220 get_card_prices --currency USD

; Get `Gordon Freeman` card price.
$ steampak market item 220 "Gordon Freeman" get_price --currency GBP

; Get games owned by `idlesign`.
$ steampak user idlesign get_games

Use --help command option to get more information on available commands.

Steam API bindings roadmap

Work in progress. Callback-based functions support is not implemented.

  • Implemented (may be partially)

    • Applications

    • Installed applications (restricted interface)

    • Friends

    • Friend tags

    • Groups

    • Current user

    • Users

    • Utilities

    • Achievements

    • Screenshots

  • Not [yet]

    • Controller

    • HTML Surface

    • HTTP

    • Inventory

    • Matchmaking

    • Music

    • Networking

    • Servers

    • Storage

    • UGC

    • Video

Documentation

http://steampak.readthedocs.org/

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

steampak-0.7.0.tar.gz (34.3 kB view details)

Uploaded Source

Built Distribution

steampak-0.7.0-py2.py3-none-any.whl (32.5 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file steampak-0.7.0.tar.gz.

File metadata

  • Download URL: steampak-0.7.0.tar.gz
  • Upload date:
  • Size: 34.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.6

File hashes

Hashes for steampak-0.7.0.tar.gz
Algorithm Hash digest
SHA256 5eced2d5426bd5ad5ba467396fed0a46737f6c59fa81dc935330ebbfda71f777
MD5 d3b8751de2a2b2cafaf91bbeda0291a4
BLAKE2b-256 bb9af758e420e10dadc104ed80d215a8c6199c12fcd8a1e3db719e583be3d65c

See more details on using hashes here.

File details

Details for the file steampak-0.7.0-py2.py3-none-any.whl.

File metadata

  • Download URL: steampak-0.7.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 32.5 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: Python-urllib/3.6

File hashes

Hashes for steampak-0.7.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 083bceaa07597d9317c49b083119118088d7e1518dc9e9ba2c2ef238a5c909e7
MD5 d0205ac649db9c2f5102775a5a308be1
BLAKE2b-256 337c46787cc340a964c195bb0acad10fbb452b6757af2fee6cd89a4d5a158193

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