fifadat 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (93) hide show
  1. checksums.yaml +7 -0
  2. data/CHANGELOG.md +4 -0
  3. data/Manifest.txt +91 -0
  4. data/README.md +24 -0
  5. data/Rakefile +32 -0
  6. data/bin/fifadat +14 -0
  7. data/lib/fifadat/api-config.rb +120 -0
  8. data/lib/fifadat/api.rb +110 -0
  9. data/lib/fifadat/config/codes_club-europe.csv +59 -0
  10. data/lib/fifadat/config/codes_club.csv +41 -0
  11. data/lib/fifadat/config/codes_nati.csv +6 -0
  12. data/lib/fifadat/config/seasons/ar.csv +7 -0
  13. data/lib/fifadat/config/seasons/at.csv +7 -0
  14. data/lib/fifadat/config/seasons/at.cup.csv +5 -0
  15. data/lib/fifadat/config/seasons/au.csv +7 -0
  16. data/lib/fifadat/config/seasons/be.csv +7 -0
  17. data/lib/fifadat/config/seasons/br.csv +6 -0
  18. data/lib/fifadat/config/seasons/ch.csv +7 -0
  19. data/lib/fifadat/config/seasons/clubworldcup.csv +2 -0
  20. data/lib/fifadat/config/seasons/cn.csv +7 -0
  21. data/lib/fifadat/config/seasons/co.csv +7 -0
  22. data/lib/fifadat/config/seasons/copa.l.csv +7 -0
  23. data/lib/fifadat/config/seasons/copa.s.csv +7 -0
  24. data/lib/fifadat/config/seasons/cz.csv +7 -0
  25. data/lib/fifadat/config/seasons/de.2.csv +6 -0
  26. data/lib/fifadat/config/seasons/de.csv +7 -0
  27. data/lib/fifadat/config/seasons/de.cup.csv +6 -0
  28. data/lib/fifadat/config/seasons/eg.csv +6 -0
  29. data/lib/fifadat/config/seasons/eng.2.csv +7 -0
  30. data/lib/fifadat/config/seasons/eng.csv +7 -0
  31. data/lib/fifadat/config/seasons/eng.facup.csv +6 -0
  32. data/lib/fifadat/config/seasons/es.csv +6 -0
  33. data/lib/fifadat/config/seasons/fr.csv +6 -0
  34. data/lib/fifadat/config/seasons/gr.csv +7 -0
  35. data/lib/fifadat/config/seasons/hu.csv +6 -0
  36. data/lib/fifadat/config/seasons/ie.csv +6 -0
  37. data/lib/fifadat/config/seasons/il.csv +6 -0
  38. data/lib/fifadat/config/seasons/interconticup.csv +24 -0
  39. data/lib/fifadat/config/seasons/is.csv +6 -0
  40. data/lib/fifadat/config/seasons/it.csv +7 -0
  41. data/lib/fifadat/config/seasons/it.cup.csv +5 -0
  42. data/lib/fifadat/config/seasons/jp.csv +7 -0
  43. data/lib/fifadat/config/seasons/kr.csv +7 -0
  44. data/lib/fifadat/config/seasons/lu.csv +3 -0
  45. data/lib/fifadat/config/seasons/ma.csv +3 -0
  46. data/lib/fifadat/config/seasons/mls.csv +6 -0
  47. data/lib/fifadat/config/seasons/mx.2.csv +5 -0
  48. data/lib/fifadat/config/seasons/mx.csv +6 -0
  49. data/lib/fifadat/config/seasons/mx.cup.csv +3 -0
  50. data/lib/fifadat/config/seasons/nir.csv +6 -0
  51. data/lib/fifadat/config/seasons/nl.csv +7 -0
  52. data/lib/fifadat/config/seasons/no.csv +6 -0
  53. data/lib/fifadat/config/seasons/pl.csv +6 -0
  54. data/lib/fifadat/config/seasons/pt.csv +7 -0
  55. data/lib/fifadat/config/seasons/sa.csv +7 -0
  56. data/lib/fifadat/config/seasons/sco.csv +7 -0
  57. data/lib/fifadat/config/seasons/se.csv +7 -0
  58. data/lib/fifadat/config/seasons/tn.csv +6 -0
  59. data/lib/fifadat/config/seasons/tr.csv +7 -0
  60. data/lib/fifadat/config/seasons/uefa.cl.csv +7 -0
  61. data/lib/fifadat/config/seasons/uefa.con.csv +6 -0
  62. data/lib/fifadat/config/seasons/uefa.europa.csv +6 -0
  63. data/lib/fifadat/config/seasons/uy.csv +6 -0
  64. data/lib/fifadat/config/seasons/wal.csv +6 -0
  65. data/lib/fifadat/config/seasons/worldcup.csv +24 -0
  66. data/lib/fifadat/config/seasons/za.csv +6 -0
  67. data/lib/fifadat/errata.rb +59 -0
  68. data/lib/fifadat/helper.rb +46 -0
  69. data/lib/fifadat/json.rb +113 -0
  70. data/lib/fifadat/pp/build_match.rb +105 -0
  71. data/lib/fifadat/pp/build_report.rb +135 -0
  72. data/lib/fifadat/pp/convert-reports.rb +114 -0
  73. data/lib/fifadat/pp/convert.rb +163 -0
  74. data/lib/fifadat/pp/goals-calc_score.rb +58 -0
  75. data/lib/fifadat/pp/goals.rb +89 -0
  76. data/lib/fifadat/pp/helper-date.rb +13 -0
  77. data/lib/fifadat/pp/helper-minute.rb +81 -0
  78. data/lib/fifadat/pp/helper-score.rb +139 -0
  79. data/lib/fifadat/pp/norm.rb +34 -0
  80. data/lib/fifadat/pp/officials.rb +86 -0
  81. data/lib/fifadat/pp/penalties.rb +132 -0
  82. data/lib/fifadat/pp/players.rb +323 -0
  83. data/lib/fifadat/pp/stadiums.rb +99 -0
  84. data/lib/fifadat/pp/stages.rb +119 -0
  85. data/lib/fifadat/pp/substitutions.rb +444 -0
  86. data/lib/fifadat/pp/teams.rb +91 -0
  87. data/lib/fifadat/ppdebug.rb +128 -0
  88. data/lib/fifadat/ppmatch.rb +78 -0
  89. data/lib/fifadat/prepare.rb +117 -0
  90. data/lib/fifadat/tool.rb +184 -0
  91. data/lib/fifadat/types.rb +166 -0
  92. data/lib/fifadat.rb +54 -0
  93. metadata +215 -0
checksums.yaml ADDED
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: a3b77862bf5d62bac36330caaa432a3a0f7fa26fd222de42c87d90ed1f036b5e
4
+ data.tar.gz: '0397e7ddd6e0685b82c61a3ab951de6dacc98b026b505e8d5f6be9d50004d03a'
5
+ SHA512:
6
+ metadata.gz: 32082c08a4a80fc2ad6f88564e07f130fb82ec2babbb86e61e415ccae6cb3d5bccbe54e335fdc54144e30b5e4007e2efbc79d35527b4c9ebc631f37f1f28ebb8
7
+ data.tar.gz: 05da4bb2c8f1c0067790bfab972077a09d1c2182de704321b3f4de106e6450949d609e5969934528d05cd069e7d304976f038a8fd5ab6be8a9b633527bc74dae
data/CHANGELOG.md ADDED
@@ -0,0 +1,4 @@
1
+
2
+ ### 0.0.1 / 2026-07-22
3
+
4
+ * Everything is new. First release.
data/Manifest.txt ADDED
@@ -0,0 +1,91 @@
1
+ CHANGELOG.md
2
+ Manifest.txt
3
+ README.md
4
+ Rakefile
5
+ bin/fifadat
6
+ lib/fifadat.rb
7
+ lib/fifadat/api-config.rb
8
+ lib/fifadat/api.rb
9
+ lib/fifadat/config/codes_club-europe.csv
10
+ lib/fifadat/config/codes_club.csv
11
+ lib/fifadat/config/codes_nati.csv
12
+ lib/fifadat/config/seasons/ar.csv
13
+ lib/fifadat/config/seasons/at.csv
14
+ lib/fifadat/config/seasons/at.cup.csv
15
+ lib/fifadat/config/seasons/au.csv
16
+ lib/fifadat/config/seasons/be.csv
17
+ lib/fifadat/config/seasons/br.csv
18
+ lib/fifadat/config/seasons/ch.csv
19
+ lib/fifadat/config/seasons/clubworldcup.csv
20
+ lib/fifadat/config/seasons/cn.csv
21
+ lib/fifadat/config/seasons/co.csv
22
+ lib/fifadat/config/seasons/copa.l.csv
23
+ lib/fifadat/config/seasons/copa.s.csv
24
+ lib/fifadat/config/seasons/cz.csv
25
+ lib/fifadat/config/seasons/de.2.csv
26
+ lib/fifadat/config/seasons/de.csv
27
+ lib/fifadat/config/seasons/de.cup.csv
28
+ lib/fifadat/config/seasons/eg.csv
29
+ lib/fifadat/config/seasons/eng.2.csv
30
+ lib/fifadat/config/seasons/eng.csv
31
+ lib/fifadat/config/seasons/eng.facup.csv
32
+ lib/fifadat/config/seasons/es.csv
33
+ lib/fifadat/config/seasons/fr.csv
34
+ lib/fifadat/config/seasons/gr.csv
35
+ lib/fifadat/config/seasons/hu.csv
36
+ lib/fifadat/config/seasons/ie.csv
37
+ lib/fifadat/config/seasons/il.csv
38
+ lib/fifadat/config/seasons/interconticup.csv
39
+ lib/fifadat/config/seasons/is.csv
40
+ lib/fifadat/config/seasons/it.csv
41
+ lib/fifadat/config/seasons/it.cup.csv
42
+ lib/fifadat/config/seasons/jp.csv
43
+ lib/fifadat/config/seasons/kr.csv
44
+ lib/fifadat/config/seasons/lu.csv
45
+ lib/fifadat/config/seasons/ma.csv
46
+ lib/fifadat/config/seasons/mls.csv
47
+ lib/fifadat/config/seasons/mx.2.csv
48
+ lib/fifadat/config/seasons/mx.csv
49
+ lib/fifadat/config/seasons/mx.cup.csv
50
+ lib/fifadat/config/seasons/nir.csv
51
+ lib/fifadat/config/seasons/nl.csv
52
+ lib/fifadat/config/seasons/no.csv
53
+ lib/fifadat/config/seasons/pl.csv
54
+ lib/fifadat/config/seasons/pt.csv
55
+ lib/fifadat/config/seasons/sa.csv
56
+ lib/fifadat/config/seasons/sco.csv
57
+ lib/fifadat/config/seasons/se.csv
58
+ lib/fifadat/config/seasons/tn.csv
59
+ lib/fifadat/config/seasons/tr.csv
60
+ lib/fifadat/config/seasons/uefa.cl.csv
61
+ lib/fifadat/config/seasons/uefa.con.csv
62
+ lib/fifadat/config/seasons/uefa.europa.csv
63
+ lib/fifadat/config/seasons/uy.csv
64
+ lib/fifadat/config/seasons/wal.csv
65
+ lib/fifadat/config/seasons/worldcup.csv
66
+ lib/fifadat/config/seasons/za.csv
67
+ lib/fifadat/errata.rb
68
+ lib/fifadat/helper.rb
69
+ lib/fifadat/json.rb
70
+ lib/fifadat/pp/build_match.rb
71
+ lib/fifadat/pp/build_report.rb
72
+ lib/fifadat/pp/convert-reports.rb
73
+ lib/fifadat/pp/convert.rb
74
+ lib/fifadat/pp/goals-calc_score.rb
75
+ lib/fifadat/pp/goals.rb
76
+ lib/fifadat/pp/helper-date.rb
77
+ lib/fifadat/pp/helper-minute.rb
78
+ lib/fifadat/pp/helper-score.rb
79
+ lib/fifadat/pp/norm.rb
80
+ lib/fifadat/pp/officials.rb
81
+ lib/fifadat/pp/penalties.rb
82
+ lib/fifadat/pp/players.rb
83
+ lib/fifadat/pp/stadiums.rb
84
+ lib/fifadat/pp/stages.rb
85
+ lib/fifadat/pp/substitutions.rb
86
+ lib/fifadat/pp/teams.rb
87
+ lib/fifadat/ppdebug.rb
88
+ lib/fifadat/ppmatch.rb
89
+ lib/fifadat/prepare.rb
90
+ lib/fifadat/tool.rb
91
+ lib/fifadat/types.rb
data/README.md ADDED
@@ -0,0 +1,24 @@
1
+ # fifadat - get football data via (unofficial) fifa api
2
+
3
+ * home :: [github.com/sportdb/sport.db](https://github.com/sportdb/sport.db)
4
+ * bugs :: [github.com/sportdb/sport.db/issues](https://github.com/sportdb/sport.db/issues)
5
+ * gem :: [rubygems.org/gems/fifadat](https://rubygems.org/gems/fifadat)
6
+ * rdoc :: [rubydoc.info/gems/fifadat](http://rubydoc.info/gems/fifadat)
7
+
8
+
9
+
10
+ ## Usage
11
+
12
+ To be done
13
+
14
+
15
+ ## License
16
+
17
+ The `fifadat` scripts are dedicated to the public domain.
18
+ Use as you please with no restrictions whatsoever.
19
+
20
+
21
+ ## Questions? Comments?
22
+
23
+ Yes, you can. More than welcome.
24
+ See [Help & Support »](https://github.com/openfootball/help)
data/Rakefile ADDED
@@ -0,0 +1,32 @@
1
+ require 'hoe'
2
+ ## require './lib/fifadat/version.rb'
3
+
4
+ Hoe.spec 'fifadat' do
5
+
6
+ self.version = '0.0.1'
7
+
8
+ self.summary = "fifadat - get football data via the (unofficial) fifa api"
9
+ self.description = summary
10
+
11
+ self.urls = { home: 'https://github.com/sportdb/sport.db' }
12
+
13
+ self.author = 'Gerald Bauer'
14
+ self.email = 'gerald.bauer@gmail.com'
15
+
16
+ # switch extension to .markdown for gihub formatting
17
+ self.readme_file = 'README.md'
18
+ self.history_file = 'CHANGELOG.md'
19
+
20
+ self.extra_deps = [
21
+ ['cocos'],
22
+ ['webget'],
23
+ ['season-formats'],
24
+ ]
25
+
26
+ self.licenses = ['Public Domain']
27
+
28
+ self.spec_extras = {
29
+ required_ruby_version: '>= 3.1.0'
30
+ }
31
+
32
+ end
data/bin/fifadat ADDED
@@ -0,0 +1,14 @@
1
+ #!/usr/bin/env ruby
2
+
3
+ ## tip: to test run:
4
+ ## ruby -I ./lib bin/fifadat
5
+
6
+
7
+ ##
8
+ ## note - always use latest (local) if present
9
+ $LOAD_PATH.unshift( '/sports/yorobot/sport.db.more/fifadat/lib' )
10
+
11
+ require 'fifadat'
12
+
13
+
14
+ Fifadat.main( ARGV )
@@ -0,0 +1,120 @@
1
+ class Fifa
2
+
3
+ ##
4
+ ## read config
5
+ ## add to (hash) table indexed by idComp
6
+
7
+ def self.root
8
+ ## sport.db.more/fifadat/lib
9
+ File.expand_path( (File.dirname(File.dirname(__FILE__))) )
10
+ end
11
+
12
+
13
+ def self.read_seasons( *paths )
14
+ comps = {}
15
+
16
+ paths.each do |path|
17
+ rows = read_csv( path )
18
+
19
+ rows.each do |row|
20
+ ## note - do NOT convert to integer!!!
21
+ ## e.g. a5rfzm8qpy3ca8d8wxlkkdslw
22
+ ## keep as string
23
+ idComp = row['id_comp'] || row['IdCompetition']
24
+ idSeason = row['id_season'] || row['IdSeason']
25
+
26
+ ## e.g. '2026' or '2026/27' etc.
27
+ ## normalize season
28
+ season = Season.parse( row['season'] ).to_s
29
+
30
+ seasons = comps[idComp] ||={}
31
+
32
+ seasons[ season ] = { season: season,
33
+ idSeason: idSeason,
34
+ idCompetition: idComp,
35
+ name: row['name'],
36
+ start_date: row['start_date'],
37
+ end_date: row['end_date']
38
+ }
39
+ end
40
+ end
41
+ comps
42
+ end
43
+
44
+
45
+ COMPETITIONS = read_seasons( *Dir.glob( "#{root}/fifadat/config/seasons/**/*.csv"))
46
+ ## pp COMPETITIONS
47
+
48
+
49
+
50
+ def self.read_codes( *paths )
51
+ comps = {}
52
+
53
+ paths.each do |path|
54
+ rows = read_csv( path )
55
+
56
+ ## hack - use club in base as automagic flag
57
+ basename = File.basename(path, File.extname(path))
58
+
59
+ club = basename.include?('club') ## otherwise assume nati(onal) teams
60
+
61
+ rows.each do |row|
62
+ ## note - do NOT convert to integer!!!
63
+ ## e.g. a5rfzm8qpy3ca8d8wxlkkdslw
64
+ ## keep as string
65
+
66
+ ## todo/fix
67
+ ## allow alternatives e.g.
68
+ ## world|worldcup
69
+ ## eng|eng.1 etc.
70
+
71
+ code = row['code']
72
+ idComp = row['id_comp'] || row['IdCompetition']
73
+
74
+ rec = { code: code,
75
+ idCompetition: idComp,
76
+ club: club, # club | nati(ional team) flag
77
+ }
78
+
79
+ comps[code] = rec
80
+ end
81
+ end
82
+ comps
83
+ end
84
+
85
+
86
+ ## code (slugs) mappings for competitions
87
+ CODES = read_codes( "#{root}/fifadat/config/codes_nati.csv",
88
+ "#{root}/fifadat/config/codes_club.csv",
89
+ "#{root}/fifadat/config/codes_club-europe.csv",
90
+ )
91
+ ## pp CODES
92
+
93
+
94
+ def self._idComp_by!( name: )
95
+ ## note - downcase and remove all spaces from name
96
+ ## e.g. WORLD CUP => worldcup
97
+ q = name.downcase.gsub( ' ', '' )
98
+ rec = CODES[ q ]
99
+ if rec.nil?
100
+ raise ArgumentError, "no competition (idCompetition) found for #{name}; sorry"
101
+ end
102
+
103
+ rec[:idCompetition]
104
+ end
105
+
106
+
107
+ def self._idSeason_by!( name:, season: )
108
+ ## note - lookup season key is a string
109
+ season = Season( season ).to_s
110
+
111
+ idComp = _idComp_by!( name: name )
112
+ rec = COMPETITIONS[ idComp ][ season ]
113
+ if rec.nil?
114
+ raise ArgumentError, "no idSeason found for #{name} #{season}; sorry"
115
+ end
116
+
117
+ rec[:idSeason]
118
+ end
119
+
120
+ end # class Fifa
@@ -0,0 +1,110 @@
1
+
2
+
3
+ class Fifa
4
+
5
+ BASE_URL = 'https://api.fifa.com/api/v3'
6
+
7
+
8
+ def self.search_matches_url( from:, to:, count: 500 )
9
+ ##
10
+ ## https://api.fifa.com/api/v3/calendar/matches?from=2026-03-24T00%3A00%3A00Z
11
+ ## &to=2026-03-31T23%3A59%3A59Z
12
+ ## &language=en
13
+ ## &count=100
14
+
15
+ from_encoded = URI.encode_www_form_component( from )
16
+ to_encoded = URI.encode_www_form_component( to )
17
+
18
+ "#{BASE_URL}/calendar/matches?"+
19
+ "from=#{from_encoded}"+
20
+ "&to=#{to_encoded}"+
21
+ "&language=en"+
22
+ "&count=#{count}"
23
+ end
24
+
25
+
26
+
27
+ def self.search_seasons_url( name: )
28
+ ## API_ROOT/seasons/search?name=FIFA%20U-20%20Women%20World%20Cup
29
+ ## todo/fix - url encode name!!!
30
+
31
+ ## note - encodes spaces as plus (+) NOT %20
32
+ name_encoded = URI.encode_www_form_component( name )
33
+
34
+ "#{BASE_URL}/seasons/search?name=#{name_encoded}&count=500"
35
+ end
36
+
37
+
38
+ def self.competitions_url ## list first 50 comps
39
+ "#{BASE_URL}/competitions/?language=en"
40
+ end
41
+
42
+
43
+ def self.competition_url( name: ) ## note - singular !! (not plural)
44
+ idCompetition = _idCompetition_by!( name: name.downcase )
45
+ Metal.competition_url( idCompetition: idCompetition )
46
+ end
47
+
48
+
49
+
50
+
51
+
52
+
53
+ class Metal
54
+
55
+ def self.competition_url( idCompetition: ) ## note - singular (NOT plural)
56
+ "#{BASE_URL}/competitions/#{idCompetition}?language=en"
57
+ end
58
+
59
+ def self.season_url( idSeason: ) ## note - singular (NOT plural)
60
+ ## API_ROOT/seasons/278491
61
+ "#{BASE_URL}/seasons/#{idSeason}"
62
+ end
63
+
64
+ ## list_seasons
65
+ ## List a competition's seasons/editions (e.g. each World Cup year),
66
+ ## newest first, with start and end dates.
67
+ ## Takes an idCompetition; returns the idSeason that stage, fixture, and squad lookups need.
68
+
69
+ def self.seasons_url( idCompetition: )
70
+ "#{BASE_URL}/seasons?"+
71
+ "count=500&idCompetition=#{idCompetition}" +
72
+ "&language=en"
73
+ end
74
+
75
+
76
+
77
+ def self.squads_url( idSeason:, idCompetition: )
78
+ ## API_ROOT/teams/squads/all/108/278491
79
+ "#{BASE_URL}/teams/squads/all/#{idCompetition}/#{idSeason}"
80
+ end
81
+
82
+ def self.matches_url( idSeason: )
83
+ ## note - may add &idCompetition=17
84
+
85
+ "#{BASE_URL}/calendar/matches?"+
86
+ "count=500&idSeason=#{idSeason}" +
87
+ "&language=en"
88
+ end
89
+
90
+ def self.stages_url( idSeason: )
91
+ ## note - may add &idCompetition=17
92
+
93
+ "#{BASE_URL}/stages?idSeason=#{idSeason}" +
94
+ "&language=en"
95
+ end
96
+
97
+
98
+
99
+ def self.live_url( idCompetition:, idSeason:,
100
+ idStage:, idMatch: )
101
+ "#{BASE_URL}/live/football/#{idCompetition}/#{idSeason}/#{idStage}/#{idMatch}?language=en"
102
+ end
103
+
104
+ def self.timeline_url( idCompetition:, idSeason:,
105
+ idStage:, idMatch: )
106
+ #API_ROOT/timelines/108/278491/278493/300424860?language=en-GB
107
+ "#{BASE_URL}/timelines/#{idCompetition}/#{idSeason}/#{idStage}/#{idMatch}?language=en"
108
+ end
109
+ end ## class Metal
110
+ end # class Fifa
@@ -0,0 +1,59 @@
1
+ code, id_comp, name
2
+
3
+ uefa.cl, 2000001032, ## UEFA Champions League
4
+ uefa.europa, 2000001041, ## UEFA Europa League
5
+ uefa.con, c7b8o53flg36wbuevfzy3lb10, ## UEFA Conference League
6
+
7
+
8
+ at, 2000000005, ## AUT | Bundesliga
9
+ at.cup, 1ncmha8yglhyyhg6gtaujymqf, ## AUT | Cup
10
+
11
+ de, 2000000019, ## GER | Bundesliga
12
+ de.2, 722fdbecxzcq9788l6jqclzlw, ## GER | 2. Bundesliga
13
+ de.cup, 486rhdgz7yc0sygziht7hje65, ## GER | DFB Pokal
14
+
15
+ ch, 2000000041, ## SUI | Super League
16
+ cz, 2000000020, ## CZE | Czech Liga
17
+ hu, 2000000023, ## HUN | NB I
18
+ pl, 2000000030, ## POL | Ekstraklasa
19
+
20
+
21
+ lu, 48pg4xminsjxun5x4yp5ng8v, ## LUX | National Division
22
+ nl, 2000000022, ## NED | Eredivisie
23
+ be, 2000000009, ## BEL | First Division A
24
+
25
+
26
+ it, 2000000026, ## ITA | Serie A
27
+ it.cup, 6694fff47wqxl10lrd9tb91f8, ## ITA | Coppa Italia
28
+
29
+ fr, 2000000018, ## FRA | Ligue 1
30
+ es, 2000000037, ## ESP | Primera División
31
+ pt, 2000000033, ## POR | Primeira Liga
32
+
33
+
34
+ gr, 2000000044, ## GRE | Super League 1
35
+ tr, 482ofyysbdbeoxauk19yg7tdt, ## TUR | Süper Lig
36
+
37
+
38
+
39
+
40
+ eng, 2000000000, ## ENG | Premier League
41
+ eng.2, 7ntvbsyq31jnzoqoa8850b9b8, ## ENG | Championship
42
+ eng.facup, 2hj3286pqov1g1g59k2t2qcgm, ## ENG | FA Cup
43
+ ## eng.cup.l, 725gd73msyt08xm76v7gkxj7u, ## ENG | League Cup
44
+
45
+ sco, 2000000001, ## SCO | Premiership
46
+ wal, c76z5d6j7dpi1e79tm8fpm39z, ## WAL | Premier League
47
+ nir, 2000000003, ## NIR | Premiership
48
+
49
+ ie, 2000000015, ## IRL | Premier Division
50
+
51
+
52
+
53
+ is, 2000000038, ## ISL | Besta deild
54
+ no, 2000000034, ## NOR | Eliteserien
55
+ se, 2000000029, ## SWE | Allsvenskan
56
+
57
+
58
+
59
+ il, 2000000137, ## ISR | Ligat Ha'al
@@ -0,0 +1,41 @@
1
+ ####
2
+ ## tournaments with clubs
3
+
4
+
5
+ code, id_comp, name
6
+
7
+ clubworldcup, 10005, ## note - club world cup is only 2025
8
+ interconticup, 107, ## note - interconti incl. all "legacy" club world cup 2000 + 2005-2023
9
+
10
+ copa.l, 2000001035, ## CONMEBOL Libertadores
11
+ copa.s, 2000001042, ## CONMEBOL Sudamericana
12
+
13
+ ar, 2000000128, ## ARG - Liga Profesional Argentina
14
+ br, 2000000078, ## BRA - Serie A
15
+ co, 2000000080, ## COL - Primera A
16
+ uy, 2000000084, ## URU - Liga AUF
17
+
18
+
19
+ mx, 2000000104, ## MEX - Liga MX
20
+ mx.cup, 1rlh9j70dy0rmqwm89v2jmzg6, ## MEX - Copa MX
21
+ mx.2, e1kxdivp5g4cpldgpwvnzl1vv, ## MEX - Liga de Expansión MX
22
+
23
+ mls, 2000000103, ## USA - MLS
24
+
25
+
26
+
27
+
28
+ au, 2000000086, ## AUS - A-League Men
29
+
30
+ cn, 2000000087, ## CHN - Chinese Super League
31
+
32
+ jp, 2000000085, ## JPN - J1 League
33
+ kr, 2000000088, ## KOR - K League 1
34
+
35
+ sa, 2000000091, ## KSA - Saudi League
36
+
37
+
38
+ eg, 2000000054, ## EGY - Premier League
39
+ ma, 1eruend45vd20g9hbrpiggs5u, ## MAR - Botola Pro
40
+ za, yv73ms6v1995b5wny16jcfi3, ## RSA - PSL
41
+ tn, f4jc2cc5nq7flaoptpi5ua4k4, ## TUN - Ligue 1
@@ -0,0 +1,6 @@
1
+ #########
2
+ ## tournaments w/ nati(onal) teams
3
+
4
+ code, id_comp, name
5
+
6
+ worldcup, 17,
@@ -0,0 +1,7 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2026,8v84l9nq3d5t0j4gb781i3llg,2000000128,2026-01-22T00:00:00Z,2026-12-14T00:00:00Z,Liga Profesional Argentina 2026
3
+ 2025,3l4bzc8syz1ea2dnv453kp89g,2000000128,2025-01-23T00:00:00Z,2025-12-14T00:00:00Z,Liga Profesional Argentina 2025
4
+ 2024,534vuyemq3e4biv283g33zf2s,2000000128,2024-01-25T00:00:00Z,2024-12-17T00:00:00Z,Liga Profesional Argentina 2024
5
+ 2023,5jc60w3y7cps00lavutor9zbo,2000000128,2023-01-27T00:00:00Z,2023-12-17T00:00:00Z,Liga Profesional Argentina 2023
6
+ 2022,400219962,2000000128,2022-02-10T00:00:00Z,2022-10-26T00:00:00Z,2022
7
+ 2021,400161635,2000000128,2021-02-12T00:00:00Z,2021-12-14T00:00:00Z,2021
@@ -0,0 +1,7 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2025/26,4jr49qim3gv5bjx3wjkf6n0us,2000000005,2025-08-01T00:00:00Z,2026-05-25T00:00:00Z,Bundesliga 2025/2026
3
+ 2024/25,b9rvjv0m4kb2zz0aym72ltzis,2000000005,2024-08-02T00:00:00Z,2025-06-01T00:00:00Z,Bundesliga 2024/2025
4
+ 2023/24,a5rfzm8qpy3ca8d8wxlkkdslw,2000000005,2023-07-28T00:00:00Z,2024-05-28T00:00:00Z,Bundesliga 2023/2024
5
+ 2022/23,400250052,2000000005,2022-07-22T00:00:00Z,2023-06-11T00:00:00Z,2022/2023
6
+ 2021/22,400183346,2000000005,2021-07-23T00:00:00Z,2022-05-29T00:00:00Z,2021/2022
7
+ 2020/21,400137040,2000000005,2020-09-11T00:00:00Z,2021-05-30T00:00:00Z,2020/2021
@@ -0,0 +1,5 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2025/26,2e01u334kcwavcknp06d3fpjo,1ncmha8yglhyyhg6gtaujymqf,2025-07-25T00:00:00Z,2026-05-01T00:00:00Z,Cup 2025/2026
3
+ 2024/25,7a7v45aaevilv0i0hzqes5d78,1ncmha8yglhyyhg6gtaujymqf,2024-07-26T00:00:00Z,2025-05-01T00:00:00Z,Cup 2024/2025
4
+ 2023/24,9oxqvhc0x1mcc01hly1cc2rys,1ncmha8yglhyyhg6gtaujymqf,2023-07-20T00:00:00Z,2024-05-01T00:00:00Z,Cup 2023/2024
5
+ 2022/23,25rqzyxotfthkjyf01es2wxzo,1ncmha8yglhyyhg6gtaujymqf,2022-07-15T00:00:00Z,2023-04-30T00:00:00Z,Cup 2022/2023
@@ -0,0 +1,7 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2025/26,f2s3v11z1occwbp69h73coqvo,2000000086,2025-10-17T00:00:00Z,2026-05-23T00:00:00Z,A-League Men 2025/2026
3
+ 2024/25,4yylure37f3rnsje6vmsps2s4,2000000086,2024-10-18T00:00:00Z,2025-05-31T00:00:00Z,A-League Men 2024/2025
4
+ 2023/24,52kxi893484fk75l1h7sndlp0,2000000086,2023-10-20T00:00:00Z,2024-05-25T00:00:00Z,A-League Men 2023/2024
5
+ 2022/23,300ig4lfofmkh3u971h34pbf8,2000000086,2022-10-07T00:00:00Z,2023-06-03T00:00:00Z,A-League Men 2022/2023
6
+ 2021/22,400208041,2000000086,2021-11-19T00:00:00Z,2022-05-28T00:00:00Z,2021/2022
7
+ 2020/21,400154324,2000000086,2020-12-28T00:00:00Z,2021-06-27T00:00:00Z,2020/2021
@@ -0,0 +1,7 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2025/26,16lkdpoccbh056r0v0bordo2c,2000000009,2025-07-25T00:00:00Z,2026-05-31T00:00:00Z,First Division A 2025/2026
3
+ 2024/25,809rv2nlzkn8gmn27a2ckuql0,2000000009,2024-07-26T00:00:00Z,2025-05-29T00:00:00Z,First Division A 2024/2025
4
+ 2023/24,f0atdrdim0sks9zagwg3an9jo,2000000009,2023-07-28T00:00:00Z,2024-06-02T00:00:00Z,First Division A 2023/2024
5
+ 2022/23,400250757,2000000009,2022-07-22T00:00:00Z,2023-06-04T00:00:00Z,2022/2023
6
+ 2021/22,400181092,2000000009,2021-07-23T00:00:00Z,2022-05-29T00:00:00Z,2021/2022
7
+ 2020/21,400127013,2000000009,2020-08-08T00:00:00Z,2021-05-23T00:00:00Z,2020/2021
@@ -0,0 +1,6 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2026,752zalnunu0zkdfbbm915kys4,2000000078,2026-01-28T00:00:00Z,2026-12-02T00:00:00Z,Serie A 2026
3
+ 2025,9pqtmpr3w8jm73y0eb8hmum8k,2000000078,2025-03-29T00:00:00Z,2025-12-07T00:00:00Z,Serie A 2025
4
+ 2024,a2yu8vfo8wha3vza31s2o8zkk,2000000078,2024-04-13T00:00:00Z,2024-12-08T00:00:00Z,Serie A 2024
5
+ 2023,czjx4rda7swlzql5d1cq90r8,2000000078,2023-04-15T00:00:00Z,2023-12-07T00:00:00Z,Serie A 2023
6
+ 2022,400232385,2000000078,2022-04-09T00:00:00Z,2022-11-13T00:00:00Z,Serie A 2022
@@ -0,0 +1,7 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2025/26,d5ju52a9misru35821zuqysd0,2000000041,2025-07-25T00:00:00Z,2026-05-17T00:00:00Z,Super League 2025/2026
3
+ 2024/25,di2qqbngtlz7uub98l52shb10,2000000041,2024-07-20T00:00:00Z,2025-05-24T00:00:00Z,Super League 2024/2025
4
+ 2023/24,c4s2k9mpw0m24f1uqkt1wlces,2000000041,2023-07-22T00:00:00Z,2024-05-25T00:00:00Z,Super League 2023/2024
5
+ 2022/23,3n6bi4gjk25gkg4wv9bvlcbh0,2000000041,2022-07-16T00:00:00Z,2023-05-29T00:00:00Z,Super League 2022/2023
6
+ 2021/22,400184462,2000000041,2021-07-24T00:00:00Z,2022-05-22T00:00:00Z,2021/2022
7
+ 2020/21,400141799,2000000041,2020-09-19T00:00:00Z,2021-05-21T00:00:00Z,2020/2021
@@ -0,0 +1,2 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2025,289175,10005,2025-06-14T00:00:00Z,2025-07-13T00:00:00Z,FIFA Club World Cup 2025
@@ -0,0 +1,7 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2026,e6818x4pwankpph8awr91m1hw,2000000087,2026-03-06T00:00:00Z,2026-11-08T00:00:00Z,Chinese Super League 2026
3
+ 2025,clgqx4d0993mz8wx3fg0vddsk,2000000087,2025-02-22T00:00:00Z,2025-11-22T00:00:00Z,Chinese Super League 2025
4
+ 2024,edpm4fpxa2ogfrfx7o2fk3ggk,2000000087,2024-03-01T00:00:00Z,2024-11-02T00:00:00Z,Chinese Super League 2024
5
+ 2023,5xdet648qkzdrnnmnhxhh9nv8,2000000087,2023-04-15T00:00:00Z,2023-11-04T00:00:00Z,Chinese Super League 2023
6
+ 2022,400241102,2000000087,2022-06-03T00:00:00Z,2022-12-31T00:00:00Z,2022
7
+ 2021,400174477,2000000087,2021-04-20T00:00:00Z,2022-01-04T00:00:00Z,2021
@@ -0,0 +1,7 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2026,5l22b8pqde1bdxk6377auk3ro,2000000080,2026-01-17T00:00:00Z,2026-12-12T00:00:00Z,Primera A 2026
3
+ 2025,ap4zyj1m5kmrw55thxe04ig44,2000000080,2025-01-25T00:00:00Z,2025-12-17T00:00:00Z,Primera A 2025
4
+ 2024,r1sd7fiyiyl5l2sy7sq8sx04,2000000080,2024-01-20T00:00:00Z,2024-12-23T00:00:00Z,Primera A 2024
5
+ 2023,4zd2xzft84vbrlhucybg5cwt0,2000000080,2023-01-25T00:00:00Z,2023-12-14T00:00:00Z,Primera A 2023
6
+ 2022,400218984,2000000080,2022-01-21T00:00:00Z,2022-12-08T00:00:00Z,2022
7
+ 2021,400191749,2000000080,2021-01-16T00:00:00Z,2021-12-23T00:00:00Z,2021
@@ -0,0 +1,7 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2026,dk8bg66qizwked9etonwaaln8,2000001035,2026-02-04T00:00:00Z,2026-11-28T00:00:00Z,CONMEBOL Libertadores 2026
3
+ 2025,168tc8nsaknvru654r6qwupsk,2000001035,2025-02-05T00:00:00Z,2025-11-29T00:00:00Z,CONMEBOL Libertadores 2025
4
+ 2024,ecldra4qmr0i4bs5cyfbiz2ms,2000001035,2024-02-07T00:00:00Z,2024-11-30T00:00:00Z,CONMEBOL Libertadores 2024
5
+ 2023,dbsk2r2snitn1gtnz9t292hhw,2000001035,2023-02-08T00:00:00Z,2023-11-04T00:00:00Z,CONMEBOL Libertadores 2023
6
+ 2022,400218683,2000001035,2022-02-09T00:00:00Z,2022-10-29T00:00:00Z,CONMEBOL Libertadores 2022
7
+ 2021,a52zexp0f3e4h3adpymsb1gr8,2000001035,2021-02-24T00:00:00Z,2021-11-27T00:00:00Z,CONMEBOL Libertadores 2021
@@ -0,0 +1,7 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2026,cup6pcsd1c7669pbvoptcmlg4,2000001042,2026-03-03T00:00:00Z,2026-11-21T00:00:00Z,CONMEBOL Sudamericana 2026
3
+ 2025,bfz5665mze2yubs4s5t21f66s,2000001042,2025-03-05T00:00:00Z,2025-11-22T00:00:00Z,CONMEBOL Sudamericana 2025
4
+ 2024,yrflkbmz3u6h2nn1sjffalg4,2000001042,2024-03-05T00:00:00Z,2024-11-23T00:00:00Z,CONMEBOL Sudamericana 2024
5
+ 2023,dppy0y9sime3c8tw4aeldm5g4,2000001042,2023-03-07T00:00:00Z,2023-10-28T00:00:00Z,CONMEBOL Sudamericana 2023
6
+ 2022,400225502,2000001042,2022-03-08T00:00:00Z,2022-10-01T00:00:00Z,2022
7
+ 2021,400162768,2000001042,2021-03-16T00:00:00Z,2021-11-20T00:00:00Z,2021
@@ -0,0 +1,7 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2025/26,editpgeuef9yi9a8akjrl4bv8,2000000020,2025-07-18T00:00:00Z,2026-05-24T00:00:00Z,Czech Liga 2025/2026
3
+ 2024/25,ezx3xnxmvvafpi9rrmsqavpqs,2000000020,2024-07-19T00:00:00Z,2025-05-25T00:00:00Z,Czech Liga 2024/2025
4
+ 2023/24,9v32gafhibc3nc4d7mi8cu61g,2000000020,2023-07-22T00:00:00Z,2024-05-31T00:00:00Z,Czech Liga 2023/2024
5
+ 2022/23,83gqiob25mguskyd0rqagns44,2000000020,2022-07-30T00:00:00Z,2023-05-28T00:00:00Z,Czech Liga 2022/2023
6
+ 2021/22,400181643,2000000020,2021-07-24T00:00:00Z,2022-05-15T00:00:00Z,2021/2022
7
+ 2020/21,400133151,2000000020,2020-08-21T00:00:00Z,2021-05-29T00:00:00Z,2020/2021
@@ -0,0 +1,6 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2025/26,3mjmai3idiul01s8jm0g7x6hg,722fdbecxzcq9788l6jqclzlw,2025-08-01T00:00:00Z,2026-05-17T00:00:00Z,2. Bundesliga 2025/2026
3
+ 2024/25,aaiuzjpvbqkch3l9w6mizhct0,722fdbecxzcq9788l6jqclzlw,2024-08-02T00:00:00Z,2025-05-18T00:00:00Z,2. Bundesliga 2024/2025
4
+ 2023/24,e8trppjx6umgbdk7wc8z3ntw4,722fdbecxzcq9788l6jqclzlw,2023-07-28T00:00:00Z,2024-05-19T00:00:00Z,2. Bundesliga 2023/2024
5
+ 2022/23,emq4j56v2j9tf3jgzfksznms4,722fdbecxzcq9788l6jqclzlw,2022-07-15T00:00:00Z,2023-05-28T00:00:00Z,2. Bundesliga 2022/2023
6
+ 2021/22,93wcwtf25153hracvqva88aac,722fdbecxzcq9788l6jqclzlw,2021-07-23T00:00:00Z,2022-05-15T00:00:00Z,2. Bundesliga 2021/2022
@@ -0,0 +1,7 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2025/26,2bchmrj23l9u42d68ntcekob8,2000000019,2025-08-22T00:00:00Z,2026-05-16T00:00:00Z,Bundesliga 2025/2026
3
+ 2024/25,73zebisnu1109jix9yoc09yc4,2000000019,2024-08-23T00:00:00Z,2025-05-17T00:00:00Z,Bundesliga 2024/2025
4
+ 2023/24,9b9nvvpz477r8yrzmorx8w6qc,2000000019,2023-08-18T00:00:00Z,2024-05-18T00:00:00Z,Bundesliga 2023/2024
5
+ 2022/23,eg8fn8zof4ps7z12vlxa6efx0,2000000019,2022-08-05T00:00:00Z,2023-05-27T00:00:00Z,Bundesliga 2022/2023
6
+ 2021/22,400188850,2000000019,2021-08-13T00:00:00Z,2022-05-14T00:00:00Z,2021/2022
7
+ 2020/21,400136282,2000000019,2020-09-18T00:00:00Z,2021-05-22T00:00:00Z,2020/2021
@@ -0,0 +1,6 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2025/26,d3y7p0y4366q5chknrlo1t34k,486rhdgz7yc0sygziht7hje65,2025-08-15T00:00:00Z,2026-05-23T00:00:00Z,DFB Pokal 2025/2026
3
+ 2024/25,1v1vssqcen1viky2el7ka2sd0,486rhdgz7yc0sygziht7hje65,2024-08-16T00:00:00Z,2025-05-24T00:00:00Z,DFB Pokal 2024/2025
4
+ 2023/24,8p6h3dooygr9szojcajkfxhjo,486rhdgz7yc0sygziht7hje65,2023-08-11T00:00:00Z,2024-05-25T00:00:00Z,DFB Pokal 2023/2024
5
+ 2022/23,6tz3d3652bkpsuzxsr087yeqc,486rhdgz7yc0sygziht7hje65,2022-07-29T00:00:00Z,2023-06-03T00:00:00Z,DFB Pokal 2022/2023
6
+ 2021/22,26ndlgpcxok48kmz9a48o85jo,486rhdgz7yc0sygziht7hje65,2021-08-06T00:00:00Z,2022-05-21T00:00:00Z,DFB Pokal 2021/2022
@@ -0,0 +1,6 @@
1
+ season,id_season,id_comp,start_date,end_date,name
2
+ 2025/26,7p3sa1jlemanzjhbsu743isyc,2000000054,2025-08-08T00:00:00Z,2026-05-29T00:00:00Z,Premier League 2025/2026
3
+ 2024/25,4sdeen6bnoc59ar9c37ukjdas,2000000054,2024-10-30T00:00:00Z,2025-05-31T00:00:00Z,Premier League 2024/2025
4
+ 2023/24,1c6emxkr6rv8x0i4i66liqv4k,2000000054,2023-09-18T00:00:00Z,2024-08-18T00:00:00Z,Premier League 2023/2024
5
+ 2022/23,cm6wm7jtcrw446t0h6a65t0r8,2000000054,2022-10-18T00:00:00Z,2023-07-26T00:00:00Z,Premier League 2022/2023
6
+ 2022,400209019,2000000054,2021-10-25T00:00:00Z,2022-08-30T00:00:00Z,2022