Package: league-utils
LeagueUtilsLeagueUtils is a set of utilities for interacting with League of Legends data.
Currently, it contains the League ISG (Item Set Generator) and an API for item
gold efficiency.ISGThe Item Set Generator is designed to build recommended pages for every
champion in every viable role. It does this by pulling date from Riot’s API and
from some third party sites, determining which build paths work best, and
updating your League config with the results.UsageThe most common use case is to runleague-utils-isgto install the item sets for every champion. The item sets will be installed
beside the default Riot recommended pages, but if you have manually downloaded
item sets into your config directory before, these may be overwritten. Make
sure any such files have unique names before running this script! (eg. anything
other than${CHAMPION}_${ROLE}.json).You can also run something likeleague-utils-isg --champ Rumbleto load info on only one champion.Gold EfficiencyThe Gold Efficiency project automatically calculates the efficiency of all
items by looking at the vallue of the stats they provide. This is a common form
oftheory crafting.These stats are calculated in real-time, and thus will always be up-to-date
when a new patch is released.When using this data, keep in mind that some aspects of items such as unique
abilities will not be taken into account in determining the worth of an item.
The ignored stats or abilities will be returned in the result.UsageFor now, this is available only as a REST API. You can access the results for
any item by ID. For example, to get efficiency data on Overlord’s Bloodmail,
runcurl https://league.thekev.in/item/3084/efficiencySetupInstall from PyPISimply runpip3 install league-utilsInstall from SourceAfter cloning this repo or downloading and un{zip,tar}ing themost recent
zipfile or tarball.python3 setup.py installRun without installingThis project can also be run without installation. After cloning this repo or
downloading and un{zip,tar}ing themost recent zipfile or tarball, runpip3 install -r requirements.txtand use theleague-utils.pyscript in the root of this folder. Working in avirtualenvis recommended!Note that when using this method, the sub-project must be provided as an
argument. For example:league-utils-isg [options]  # becomes: ./league-utils.py isg [options]From a binaryPre-compiled binaries are provided for some Operating Systems. If yours is
supported, you can grab the binary for thelatest releaseand just run that
without installing anything. Note that using this method does not allow you to
easily update your installation.If you use a binary to runleague-utils, make sure you use theleague-utils.pysyntax described above.Running Your Own ServerSo you want to run your own API server, eh? Well, there’s a convenient docker
file you can use for that, but it does require just a bit of setup.You’ll need to get yourself API keys for both Riot’s API and champion.gg’s.
Once you do, simply export them to your shell and use docker-compose to run the
server. Roughly speaking, you’ll want to:export CHAMPIONGG_TOKEN=foo-asdfasdfasdf
export LEAGUE_TOKEN=bar-fdsafdsafdsa
git clone git@github.com:thekevjames/league.git
cd league
docker-compose build
docker-compose upYou may also be interested in using theofficial docker image. If you are,
the following might make your life easier:curl https://raw.githubusercontent.com/TheKevJames/league/master/docker-compose.yml > docker-compose.yml
mkdir -p api  # docker-compose oddity
docker-compose pull
docker-compose up -dDisclaimerThis project probably won’t make your computer explode, make your girlfriend
leave you, or get you fired from your job, but I make no guarantees that
blindly following its advice won’t drop your ELO. You’ve been warned.