This is the implementation of the Light version of the Marcotti (formerly Football Match Result Database) models. The models are implemented as backend-independent SQLAlchemy objects, and club and national team databases are built from these objects.
Marcotti-Light captures full-time scorelines (and penalty shootout results if applicable) for teams participating in league, knockout, and group stage competitions, as well as friendly matches. It also captures administrative point deductions to teams, which is more applicable to league competitions but is kept general here.
Marcotti-Light is written in Python and uses the SQLAlchemy package heavily. Alembic is used to manage database migrations.
While not required, virtualenv is strongly recommended and virtualenvwrapper is very convenient.
Installation instructions:
-
Grab latest repo, setup the virtual environment, and install the dependent packages into it:
$ git clone git://github.com/soccermetrics/marcotti-light.git $ cd marcotti-light $ mkvirtualenv light (light) $ pip install -r requirements.txt -
Copy
light\config\local.skeltolight\config\local.pyand populate it. Alternative configuration settings can be created by subclassingLocalConfigand overwriting the attributes.class LocalConfig(Config): # At a minimum, these variables must be defined. DIALECT = '' DBNAME = '' # For all other non-SQLite databases, these variables must be set. DBUSER = '' DBPASSWD = '' HOSTNAME = '' PORT = 5432
- Countries
- Confederations
- DomesticCompetitions
- InternationalCompetitions
- Seasons
- Years
- GroupRounds
- KnockoutRounds
- Clubs
- ClubFriendlyMatches
- ClubLeagueMatches
- ClubGroupMatches
- ClubKnockoutMatches
- ClubShootoutMatches
- ClubDeductions
- NationalFriendlyMatches
- NationalGroupMatches
- NationalKnockoutMatches
- NationalShootoutMatches
- NationalDeductions
- Transition to Python 3
(c) 2015-2016 Soccermetrics Research, LLC. Created under MIT license. See LICENSE file for details.