Skip to contents

worldfootballR (development version)

Bugs

Improvements

worldfootballR 0.6.3

Breaking Changes

  • tm_player_transfer_history() now contains an additional column in the returned dataframe (transfer_type). This column differentiate between regular transfers, free transfers, loans and paid loans and transfers due to players returning from loan.
  • fb_player_scouting_report() now accepts an additional argument called league_comp_name that allows the user to only return reports for specific leagues/comps. not passing anything to this results in all reports being returned

Bugs

Improvements

worldfootballR 0.6.2

CRAN release: 2022-11-26

Bugs

  • tm_player_market_values() returning NAs in the squad column
  • tm_ functions were missing the country and comp_name columns due to a change in the html on transfermarkt
  • fb_match_shooting() throwing errors for duplicate column names after switch from StatsBomb to Opta on FBRef
  • fb_team_goal_logs and fb_player_goal_logs gave errors when columns were not present
  • fotmob_get_season_stats returning lexical error #201
  • fotmob_get_season_stats internals changed to handle new data format
  • tm_staff_job_history() code changed due to HTML changes on transfermarkt.com
  • All FBRef functions calling internal function .get_match_report_page() were returning ‘Major League Soccer’ as the away team #216
  • fb_match_shooting() was returning the wrong home or away designation in games where team names were inconsistent on the page #219
  • fb_match_summary(), fb_match_shooting() not returning returning Away Team name for international matches
  • fb_match_lineups() returning ‘Major League Soccer’ as the away team for international matches #221

Improvements


worldfootballR 0.6.1

CRAN release: 2022-10-14

New functions

  • fb_team_goal_logs - returns the team’s season goals for and goals against logs
  • fb_player_goal_logs - returns the player’s career goal and assist logs

Improvements

  • Fotmob functions now pass user agent to headers under the hood

Bugs

  • tm_squad_stats() throwing differing number of rows error #187
  • .get_match_report_page() internal function used in a number of fb_ functions throwing errors for cup tie legs #174
  • .clean_table_names() change to internal function that will include ’*_performance*’ to some column names in fb_team_match_log_stats() to address duplicated column names for stat_type = 'keeper' #184

Breaking Changes

Some column names in output of fb_team_match_log_stats() will now include *_Performance* at the end of the name. See #184 for more details


worldfootballR 0.6.0

CRAN release: 2022-08-24

New functions (and deprecated old ones)

Bugs

Elements changed on FBref somewhere in the same time v 0.5.11 was being released!

Improvements

New functions (and deprecated old ones)


worldfootballR 0.5.7

CRAN release: 2022-07-11

Improvements

  • load_understat_league_shots() Functions to load pre stored shooting locations for all matches played since the 2014/15 season for the five leagues available on the Understat site.
  • load_match_comp_results() Functions to load pre stored match results from domestic and international cups/competitions

Bugs


worldfootballR 0.5.6

CRAN release: 2022-06-15

Improvements

To respect FBref’s rate limiting rules, all functions have now been updated to have a default pause of three seconds between page loads, up from two seconds which was originally requested.

Bugs


worldfootballR 0.5.3

Improvements

Now starting to have load functions:

Bugs


worldfootballR 0.5.2

Improvements

  • fotmob_get_league_matches and fotmob_get_league_tables now check 2 places for the league endpoint since it changes occasionally.
  • fotmob_get_match_players gets 3 additional columns: match_id, team_id, team_name. #105
  • fotmob_get_season_stats gains stat_league_name and can now be used for all leagues since seasons are programmatically scraped
  • tm_player_bio() now also returns the player’s maximum valuation (max_player_valuation) and the date that max valuation was recorded (max_player_valuation_date). Note: there will now be an additional two columns to the output
  • Additional processing logic added such that fotmob_get_league_tables works properly for international tournaments.
  • The stat_type argument in fotmob_get_seasons_stats renamed to stat_name to reflect the different set of values that it takes. Valid values are now equivalent to the options that can be found on the stats page in the browser, e.g. the Liverpool player stats page.
  • All FBref functions now contain a user defined pause (time_pause) before each page load to abide by their new rate limiting rules. See here. Default is set to 2 seconds
  • Internal function.get_each_season_results() exported now

Bugs

  • tm_player_bio returning player number instead of name and also NAs for valuation #109
  • fotmob_get_match_players failed for non-domestic leagues because the team element does id not exist under the table element. Fix is to have more robust element for assigning team ids for players.
  • fotmob_get_seasons_stats failed for non-domestic leagues, even when setting cached=TRUE. Fix was to add logic such that the latest season for a given league is found from the “See More” links on a generic stats page.

worldfootballR 0.5.1.1000

  • Set minimum R version to 4.0.0

worldfootballR 0.5.1

CRAN release: 2022-03-25

  • Modifications based on CRAN feedback to updates for CRAN submission

worldfootballR 0.5.0

CRAN release: 2022-03-21

New functions

Improvements

Bugs

  • fotmob_get_league_matches and fotmob_get_league_tables updated to address new Fotmob league endpoint.
  • fotmob_get_match_players() no longer returning the identical home and away team IDs #93
  • fotmob_get_league_matches and fotmob_get_league_tables updated to address new Fotmob league endpoint.

worldfootballR 0.4.10

CRAN release: 2022-02-08

Improvements

Bugs


worldfootballR 0.4.9

CRAN release: 2022-01-16

New functions

Improvements

Bugs


worldfootballR 0.4.7

New functions

  • tm_team_staff_urls() allows users to extract URLs of selected team staff members based on staff role (ie ‘Manager’, ‘Assistant Manager’, etc)
  • tm_team_staff_history() allows users to get all people who have held the selected role in a team’s history and some summary statistics
  • tm_staff_job_history() allows users to get all roles a selected staff member(s) has held and performance data in that role (wins, draws, losses, etc)

Bugs

  • Fixed for rare case of duplicate socials in tm_player_bio() coercing other values to lists

worldfootballR 0.4.6

New functions

Improvements

  • get_season_team_stats() now returns an additional column for MLS called Conference for when stat_type = "league_table" and stat_type = "league_table_home_away"

worldfootballR 0.4.5

CRAN release: 2021-11-25

Improvements

worldfootballR 0.4.4

Improvements

  • CRAN Submission Feedback:
    • Wrap Data sources in single quotes in DESCRIPTION file (title and/or description)
    • Fixed Warning: Unexecutable code in man/fb_player_scouting_report.Rd: pos_versus = "primary")
    • Wrote .pkg_message() to allow users to easily suppress messages outputted to the console by setting options(mypackage.verbose = FALSE)
    • Removed unnecessary examples
  • Results of using understat_ functions now return the correct full season details (ie for season_start_year = 2019, the resulting season column in the df will be ‘2019/2020’)

worldfootballR 0.4.3

Improvements


worldfootballR 0.4.2

Bugs

  • Fixed various transfermarkt functions that were broken due to HTML changes on the site

worldfootballR 0.4.1

Breaking Changes

  • Remove FotMob functions

worldfootballR 0.4.0

worldfootballR 0.3.6

Improvements / Breaking Changes

  • fb_player_scouting_report() now contains an additional column in the output (scouting_period) that allows the user to filter on the period they need the scouting report for

Bugs


worldfootballR 0.3.5

Improvements


worldfootballR 0.3.4

Improvements

  • tm_team_transfers() now also includes player URLs from Transfermarkt to allow for joining with player market values #51

Bugs


worldfootballR 0.3.3

New functions

  • player_dictionary_mapping() returns a data frame of players (names and FBref URLs) who have played in the top 5 Euro leagues and their respective Transfermarkt URL

Improvements

Transfermarkt functions tm_team_transfers() and player_transfer_history() returning transfer prices now differentiate between unknown (returning NA) to free transfers (returning 0) #45 * fb_big5_advanced_season_stats() now returns player URLs from FBref

Bugs


worldfootballR 0.3.2

Breaking Changes

  • The Team in the data frame column returned by get_match_shooting() no longer exists, with Squad being elevated in to it’s place instead.

Bugs


worldfootballR 0.3.1

Improvements

The following functions now return results for international matches fro FBref:

The following transfermarkt function has been improved:

Bugs


worldfootballR 0.3.0

New functions

Functions to extract understat.com data now available: * Shots locations data: * understat_league_season_shots() to get shot location data for all matches in a league season * understat_team_season_shots() to get shot locations for and against a select team * understat_match_shots() to get shot locations for a selected match * understat_player_shots() to get all available shot locations for games played by a selected player * understat_league_match_results() to get results and match data for all matches played in a season

New transfermarkt.com functions: * tm_player_bio() to get player bios from transfermarkt * tm_team_transfers() to get all arrival and departures for a team season * tm_squad_stats() to get basic squad stats for teams for a season * Helper functions: * tm_league_team_urls() to get teams URLs for a league season * tm_team_player_urls() to get player URLs for a given team

Improvements

  • get_player_market_values() from transfermarkt now includes player heights, their preferred foot, when they joined the club and where from and when their contract expires
  • player_transfer_history() now includes remaining contract expiry data and remaining contract length (in days) #34
  • get_match_lineups() now identifies diamond formations
  • Progress bars now included on all long running functions!

worldfootballR 0.2.9

Breaking Changes

  • Most Fbref table names will have changed slightly, as they have been cleaned up to not include “__” and “+/-” has been replaced with “Plus_Minus”
  • Column names event_time, event_type, event_players and score_progression changed for get_match_summary(), and additional columns added

Improvements

  • fb_player_season_stats() now able to accept multiple player_url values
  • get_match_summary() now contains additional columns:
    • Is_Pens to indicate whether the event is from a penalty shootout
    • Event_Half to indicate which half the event occurred in (1, 2, 3, 4, 5), with 3 & 4 being extra time and 5 being penalty shootout
    • Penalty_Number for penalty shootouts, the penalty taking order

Bugs


worldfootballR 0.2.8

New functions

Improvements

  • fb_player_scouting_report() now returns a players full scouting report against peers in Men’s Big 5 Leagues and European Competition over the last 365 days (issue 27)
  • Removed the country abbreviation in the Squad column of the data frame returned using fb_player_season_stats()

worldfootballR 0.2.7

New functions

Improvements

  • get_match_lineups() now returns additional summary player performance data (shots, goals, cards, etc) to the original lineups output

Bugs

  • Fixed issue where get_season_player_stats() not returning results for players who have only played in domestic comps (not cups, internationals, etc) (issue #22)
  • Fixed issue where fb_big5_advanced_season_stats() not returning results for ‘playing_time’ stat_type (issue #23)

worldfootballR 0.2.6

New functions

Improvements

  • Various transfermarkt functions refactored to have consistent column names

Bugs

  • Fix duplicating league URLs in fb_league_urls() as a result of including “Big 5” competition issue #19
  • Fix duplicating league URLs in various season-level functions as a result of including “Big 5” competition issue #20
  • Fix duplicated results in some functions

worldfootballR 0.2.5

New functions


worldfootballR 0.2.4

New functions

Improvements


worldfootballR 0.2.3

  • Added league_url argument to get_player_market_values() to allow extraction of non-standard (leagues not stored in worldfootballR_data) leagues

worldfootballR 0.2.2


worldfootballR 0.2.1

General Changes

  • Removed internal functions no longer necessary (data is stored at JaseZiv/worldfootballR_data instead)
  • Usage instructions now in vignettes as opposed to README

Bugs

  • Fixed duplicate column name issue for keeper stats #13

worldfootballR 0.2.0

  • Added get_player_market_values to get player valuations from transfermarkt.com

worldfootballR 0.1.0

  • Bug fixes #8
  • Package Logo
  • Tests written and codecov installed

worldfootballR 0.0.1

  • performance improvements, including limiting page reads where match report data included in output
  • error handling

worldfootballR 0.0.0.9000

  • First commit of package
  • Added function to get the match results of a given tier-1 league season get_match_results()
  • Added function to extract match URLs for a given tier-1 league season get_match_urls()
  • Added function to get team season statistics get_season_team_stats()
  • Added function to get additional metadata for matches get_match_report()
  • Added function to get match lineups for selected match urls get_match_lineups()
  • Added function to get advanced match statistics for players and/or teams get_advanced_match_statistics()
  • Added function to get match events summary get_match_summary()