Soccerdata Versions Save

⛏⚽ Scrape soccer data from Club Elo, ESPN, FBref, FiveThirtyEight, Football-Data.co.uk, FotMob, Sofascore, SoFIFA, Understat and WhoScored.

v1.0.0

2 years ago

Breaking Changes

  • Several columns were renamed, added and droped in the output dataframes to increase uniformity between datasources.

New features

WhoScored

The WhoScored reader can now return event data in various output formats. The following formats are supported:

  • A dataframe with all events.
  • A dict with the original unformatted WhoScored JSON.
  • A dataframe with the SPADL representation of the original events.
  • A dataframe with the Atomic-SPADL representation of the original events.
  • A socceration.data.opta.OptaLoader instance.
  • No data. This is useful for caching data.

See https://soccerdata.readthedocs.io/en/latest/datasources/WhoScored.html for examples.

v0.1.0

2 years ago

Breaking Changes

  • The use_tor parameter was replaced by a use_proxy='tor' parameter in all readers

New features

  • You can specify a custom proxy using the use_proxy parameter for all readers.
ws = soccerdata.WhoScored(use_proxy={'http': 'http://126.352.12.3:5471'})

Fixes

FBref

  • FBref has implemented a new rate-limiting polity allowing only one request every two seconds. The FBref reader is now configured to comply with this.

v0.0.3

2 years ago

Bugfixes

WhoScored

  • The summary tab is now used as a backup for retrieving the schedule when the fixtures tab is empty. This often occurs for multi-stage tournaments. (#15)
  • Fixed incorrect resolver rules for the Tor proxy. (#23)

MatchHistory

  • Football-data.co.uk switched from http to https only.

Docs

  • Added example notebooks for reading data from each supported data source.

v0.0.2

2 years ago

Bugfixes

FBref

  • The FBref reader crashed while scraping match stats, lineups or shots for the current season as it did not handle future games correctly.

Testing Improvements

  • Sets up CI using Github Actions
  • Sets up automatic dependency updates using Renovate bot