Skip to main content

Module for interacting with various Steam features

Project description

Latest version released on PyPi MIT License Test coverage Build status of master branch

Module for interacting with various Steam features

WebAPI

Wrapper around Steam Web API. Requires API Key. Upon initialization the instance will fetch all available interfaces from the API and populate the namespace. What interfaces are availability depends on the key.

>>> from steam import WebAPI
>>> api = WebAPI(key="<your api key>")

>>> api.ISteamWebAPIUtil.GetServerInfo()
>>> api.call('ISteamWebAPIUtil.GetServerInfo')
{u'servertimestring': u'Sun Jul 05 22:37:25 2015', u'servertime': 1436161045}

>>> api.ISteamUser.ResolveVanityURL(vanityurl="valve", url_type=2)
>>> api.call('ISteamUser.ResolveVanityURL', vanityurl="valve", url_type=2)
{u'response': {u'steamid': u'103582791429521412', u'success': 1}}

# call a specific version of the method
>>> api.ISteamUser.ResolveVanityURL_v1(vanityurl="valve", url_type=2)
>>> api.call('ISteamUser.ResolveVanityURL_v1', vanityurl="valve", url_type=2)

It’s not necessary to provide the key when calling any interface method. key, format, raw parameters can be specified on WebAPI to affect all method calls, or when calling a specific method. Some methods have parameters which need to be a list. Trying to call nonexistent method will raise an AttributeError.

Supported formats by web api are: json (default), vdf, xml The response will be deserialized using the appropriate module unless raw is True.

>>> api.ISteamUser.ResolveVanityURL.__doc__  # method doc
"""
ResolveVanityURL (v0001)

  Parameters:
    key                       string   required
      - access key
    url_type                  int32    optional
      - The type of vanity URL. 1 (default): Individual profile, 2: Group, 3: Official game group
    vanityurl                 string   required
      - The vanity URL to get a SteamID for

"""

# or calling doc() will print it
>>> api.ISteamUser.ResolveVanityURL.doc()  # method doc
>>> api.ISteamUser.doc()  # interface and all methods
>>> api.doc()  # all available interfaces

Checkout the wiki for a list of the currently available API interfaces.

SteamID

>>> from steam import SteamID

>>> SteamID()
SteamID(id=0, type='Invalid', universe='Invalid', instance=0)

>>> SteamID(12345)  # accountid
>>> SteamID('12345')
>>> SteamID('STEAM_1:1:6172')  # steam2
SteamID(id=12345, type='Individual', universe='Public', instance=1)

>>> SteamID(103582791429521412)  # steam64
>>> SteamID('103582791429521412')
>>> SteamID('[g:1:4]')  # steam3
SteamID(id=4, type='Clan', universe='Public', instance=0)

# vanity urls are resolved by fetching the community profile page (this is unstable)
# use the WebAPI to reliably resolve vanity urls
>>> SteamID('https://steamcommunity.com/id/drunkenf00l')
>>> SteamID('http://steamcommunity.com/profiles/76561197968459473')  # no request is made
SteamID(id=8193745, type='Individual', universe='Public', instance=1)

>>> group = SteamID('[g:1:4]')
>>> group.id  # accountid
4
>>> group.as_32  # accountid
4
>>> group.as_64
103582791429521412
>>> str(group)
'103582791429521412'
>>> group.as_steam2 # only works for 'Individual' accounts
'STEAM_1:0:2'
>>> group.as_steam3
'[g:1:4]'
>>> group.community_url
'https://steamcommunity.com/gid/103582791429521412'

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

steam-0.5.2.tar.gz (11.3 kB view details)

Uploaded Source

Built Distribution

steam-0.5.2-py2.py3-none-any.whl (13.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file steam-0.5.2.tar.gz.

File metadata

  • Download URL: steam-0.5.2.tar.gz
  • Upload date:
  • Size: 11.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for steam-0.5.2.tar.gz
Algorithm Hash digest
SHA256 ff9e2b9f10659f5dda8d2e644415d415d4d4c56e2be3d9d4fff18bc6751b778b
MD5 d1e139f16e830955cff69da6d244ed18
BLAKE2b-256 714424e3a5ea7ca5a822b8df06042f750d211ffaa092b41739668a357f8d31af

See more details on using hashes here.

File details

Details for the file steam-0.5.2-py2.py3-none-any.whl.

File metadata

File hashes

Hashes for steam-0.5.2-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 d03a288f9b4e3ed63b45b3f5614f752086ad7e818e953297dddb4d611e9ce68b
MD5 b01f486567ed644388272938f87cdef3
BLAKE2b-256 5768b4cbadf949bf60a1d33df753d6ea267c7bd258b2dbac79d2b7a6b3438cac

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