SteamDissector is an library/service that can be used to fetch data from Steam, such as user info, user's games and game's details.
SteamDissector is primarily made for use in conjunction with SteamDissector web ui.
Goal is to create a service that can be used to sort your Steam game library better, and answer questions such as:
- "What controller enabled games do I have?"
- "What multiplayer games my friend and I both own?"
- "Which game is the latest adventure game I have?"
Dependencies and libraries used:
Installing and running locally:
Python2.7, pip, virtualenv.
Requirements for lxml:
python-dev, libxslt1-dev, zlib1g-dev.
- Install, configure and run MongoDB
- Clone repository, chdir into it
- Run command
virtualenv --no-site-packages --distribute .env && source .env/bin/activate && pip install -r requirements.txt
- Create config with
cp config.cfg.example config.cfgand edit it for your pleasure
- Run the flask app with your favourite web server, developement server can be run with
python steam_dissector, gunicorn can be run with
gunicorn -b '127.0.0.1:8088' -w 3 -t 60 steam_dissector:app
Installing and running on dokku:
- dokku mongodb:create steam-dissector
- dokku mongodb:link steam-dissector
- git remote add dokku dokku@....:steam-dissector
- git push dokku master
Running with docker
Prebuild docker image may be pulled from underkround/steam-dissector
Interactive testing without cache with 1 worker:
sudo docker run --rm -p 8088:8080 --env "WORKERS=1" underkround/steam-dissector
Interactive with cache:
sudo docker run --rm -p 8088:8080 --link mongo:mongo underkround/steam-dissector
sudo docker run -d --name steam_dissector -p 8088:8080 --link mongo:mongo underkround/steam-dissector