Python utility script to extract Humble keys, and redeem them on Steam automagically by detecting when a game is already owned on Steam.
This is primarily designed to be a set-it-and-forget-it tool that maximizes successful entry of keys into Steam, assuring that no Steam game goes unredeemed.
This script will login to both Humble and Steam, automating the whole process. It's not perfect as I made this mostly for my own personal case and couldn't test all possibilities so YMMV. Feel free to send submit an issue if you do bump into issues.
Any revealing and redeeming the script does will output to spreadsheet files based on their actions for you to easily review what actions it took and whether it redeemed, skipped, or failed on specific keys.
Find Steam games from Humble that are unowned by your Steam user, and ONLY of those that are unowned, redeem on Steam revealed keys (This EXCLUDES non-Steam keys and unclaimed Humble Choice games)
If you choose to reveal keys in this mode, it will only reveal keys that it goes to redeem (ignoring those that are detected as already owned)
Find all games from Humble, optionally revealing all unrevealed keys, and output them to a CSV (comes with an optional Steam ownership column).
This is great if you want a manual review of what games are in your keys list that you may have missed.
For those subscribed to Humble Choice, this mode will find any Humble Monthly/Choice that has unclaimed choices, and will let you select, reveal, and optionally autoredeem on Steam the keys you select
To remove an already added account, delete the associated .(humble|steam)cookies
file.
Requires Python version 3.6 or above
steam
: ValvePython/steamfuzzywuzzy
: seatgeek/fuzzywuzzyrequests
: requestsselenium
: seleniumpwinput
: pwinputpython-Levenshtein
: ztane/python-Levenshtein OPTIONAL
Install the required dependencies with
pip install -r requirements.txt
If you want to install python-Levenshtein
:
pip install python-Levenshtein