This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Nicely packed tools to work with Steam APIs

Project Description

https://github.com/idlesign/steampak

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
  • Not [yet]

    • Controller
    • HTML Surface
    • HTTP
    • Inventory
    • Matchmaking
    • Music
    • Networking
    • Screenshots
    • Servers
    • Storage
    • UGC
    • Video
Release History

Release History

This version
History Node

0.5.0

History Node

0.4.2

History Node

0.4.1

History Node

0.4.0

History Node

0.3.1

History Node

0.3.0

History Node

0.2.0

History Node

0.1.0

Download Files

Download Files

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

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
steampak-0.5.0-py2.py3-none-any.whl (28.8 kB) Copy SHA256 Checksum SHA256 2.7 Wheel Mar 5, 2017
steampak-0.5.0.tar.gz (29.0 kB) Copy SHA256 Checksum SHA256 Source Mar 5, 2017

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting