refactor: consolidate data/ into single root directory, fix historical player names
Merge data/wikipedia/{year}/ into data/{year}/ so there is a single
canonical location for World Cup JSON files. Update scrape and seed
scripts to use data/ instead of data/wikipedia/.
Re-scraped all 22 years (1930-2022) with fixed player name extraction
(full name from <a title="..."> rather than abbreviated display text)
so historical goals now show e.g. "Thomas Müller" not "Müller".
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
+67
-67
@@ -15,25 +15,25 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "L. Laurent",
|
||||
"name": "Lucien Laurent",
|
||||
"minute": 19
|
||||
},
|
||||
{
|
||||
"name": "Langiller",
|
||||
"name": "Marcel Langiller",
|
||||
"minute": 40
|
||||
},
|
||||
{
|
||||
"name": "Maschinot",
|
||||
"name": "André Maschinot",
|
||||
"minute": 43
|
||||
},
|
||||
{
|
||||
"name": "Maschinot",
|
||||
"name": "André Maschinot",
|
||||
"minute": 87
|
||||
}
|
||||
],
|
||||
"goals2": [
|
||||
{
|
||||
"name": "Carreño",
|
||||
"name": "Juan Carreño",
|
||||
"minute": 70
|
||||
}
|
||||
],
|
||||
@@ -54,7 +54,7 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Monti",
|
||||
"name": "Luis Monti",
|
||||
"minute": 81
|
||||
}
|
||||
],
|
||||
@@ -75,15 +75,15 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Vidal",
|
||||
"name": "Carlos Vidal",
|
||||
"minute": 3
|
||||
},
|
||||
{
|
||||
"name": "Vidal",
|
||||
"name": "Carlos Vidal",
|
||||
"minute": 65
|
||||
},
|
||||
{
|
||||
"name": "M. Rosas",
|
||||
"name": "Manuel Rosas",
|
||||
"minute": 52,
|
||||
"owngoal": true
|
||||
}
|
||||
@@ -105,7 +105,7 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Subiabre",
|
||||
"name": "Guillermo Subiabre",
|
||||
"minute": 67
|
||||
}
|
||||
],
|
||||
@@ -126,42 +126,42 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Stábile",
|
||||
"name": "Guillermo Stábile",
|
||||
"minute": 8
|
||||
},
|
||||
{
|
||||
"name": "Stábile",
|
||||
"name": "Guillermo Stábile",
|
||||
"minute": 17
|
||||
},
|
||||
{
|
||||
"name": "Stábile",
|
||||
"name": "Guillermo Stábile",
|
||||
"minute": 80
|
||||
},
|
||||
{
|
||||
"name": "Zumelzú",
|
||||
"name": "Adolfo Zumelzú",
|
||||
"minute": 12
|
||||
},
|
||||
{
|
||||
"name": "Zumelzú",
|
||||
"name": "Adolfo Zumelzú",
|
||||
"minute": 55
|
||||
},
|
||||
{
|
||||
"name": "Varallo",
|
||||
"name": "Francisco Varallo",
|
||||
"minute": 53
|
||||
}
|
||||
],
|
||||
"goals2": [
|
||||
{
|
||||
"name": "M. Rosas",
|
||||
"name": "Manuel Rosas",
|
||||
"minute": 42,
|
||||
"penalty": true
|
||||
},
|
||||
{
|
||||
"name": "M. Rosas",
|
||||
"name": "Manuel Rosas",
|
||||
"minute": 65
|
||||
},
|
||||
{
|
||||
"name": "Gayón",
|
||||
"name": "Roberto Gayón",
|
||||
"minute": 75
|
||||
}
|
||||
],
|
||||
@@ -182,21 +182,21 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Stábile",
|
||||
"name": "Guillermo Stábile",
|
||||
"minute": 12
|
||||
},
|
||||
{
|
||||
"name": "Stábile",
|
||||
"name": "Guillermo Stábile",
|
||||
"minute": 13
|
||||
},
|
||||
{
|
||||
"name": "M. Evaristo",
|
||||
"name": "Mario Evaristo",
|
||||
"minute": 51
|
||||
}
|
||||
],
|
||||
"goals2": [
|
||||
{
|
||||
"name": "Subiabre",
|
||||
"name": "Guillermo Subiabre",
|
||||
"minute": 15
|
||||
}
|
||||
],
|
||||
@@ -217,11 +217,11 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Tirnanić",
|
||||
"name": "Aleksandar Tirnanić",
|
||||
"minute": 21
|
||||
},
|
||||
{
|
||||
"name": "Bek",
|
||||
"name": "Ivan Bek",
|
||||
"minute": 30
|
||||
}
|
||||
],
|
||||
@@ -248,19 +248,19 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Bek",
|
||||
"name": "Ivan Bek",
|
||||
"minute": 60
|
||||
},
|
||||
{
|
||||
"name": "Bek",
|
||||
"name": "Ivan Bek",
|
||||
"minute": 67
|
||||
},
|
||||
{
|
||||
"name": "Marjanović",
|
||||
"name": "Blagoje Marjanović",
|
||||
"minute": 65
|
||||
},
|
||||
{
|
||||
"name": "Vujadinović",
|
||||
"name": "Đorđe Vujadinović",
|
||||
"minute": 85
|
||||
}
|
||||
],
|
||||
@@ -281,11 +281,11 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Moderato",
|
||||
"name": "Moderato Wisintainer",
|
||||
"minute": 37
|
||||
},
|
||||
{
|
||||
"name": "Moderato",
|
||||
"name": "Moderato Wisintainer",
|
||||
"minute": 73
|
||||
},
|
||||
{
|
||||
@@ -314,21 +314,21 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Deșu",
|
||||
"name": "Adalbert Deșu",
|
||||
"minute": 1
|
||||
},
|
||||
{
|
||||
"name": "Stanciu",
|
||||
"name": "Constantin Stanciu",
|
||||
"minute": 79
|
||||
},
|
||||
{
|
||||
"name": "Kovács",
|
||||
"name": "Miklós Kovács",
|
||||
"minute": 89
|
||||
}
|
||||
],
|
||||
"goals2": [
|
||||
{
|
||||
"name": "De Souza",
|
||||
"name": "Luis de Souza",
|
||||
"minute": 75
|
||||
}
|
||||
],
|
||||
@@ -349,7 +349,7 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Castro",
|
||||
"name": "Héctor Castro",
|
||||
"minute": 65
|
||||
}
|
||||
],
|
||||
@@ -370,19 +370,19 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Dorado",
|
||||
"name": "Pablo Dorado",
|
||||
"minute": 7
|
||||
},
|
||||
{
|
||||
"name": "Scarone",
|
||||
"name": "Héctor Scarone",
|
||||
"minute": 26
|
||||
},
|
||||
{
|
||||
"name": "Anselmo",
|
||||
"name": "Peregrino Anselmo",
|
||||
"minute": 31
|
||||
},
|
||||
{
|
||||
"name": "Cea",
|
||||
"name": "Pedro Cea",
|
||||
"minute": 35
|
||||
}
|
||||
],
|
||||
@@ -403,15 +403,15 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "McGhee",
|
||||
"name": "Bart McGhee",
|
||||
"minute": 23
|
||||
},
|
||||
{
|
||||
"name": "Florie",
|
||||
"name": "Tom Florie",
|
||||
"minute": 45
|
||||
},
|
||||
{
|
||||
"name": "Patenaude",
|
||||
"name": "Bert Patenaude",
|
||||
"minute": 69
|
||||
}
|
||||
],
|
||||
@@ -432,15 +432,15 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Patenaude",
|
||||
"name": "Bert Patenaude",
|
||||
"minute": 10
|
||||
},
|
||||
{
|
||||
"name": "Patenaude",
|
||||
"name": "Bert Patenaude",
|
||||
"minute": 15
|
||||
},
|
||||
{
|
||||
"name": "Patenaude",
|
||||
"name": "Bert Patenaude",
|
||||
"minute": 50
|
||||
}
|
||||
],
|
||||
@@ -461,7 +461,7 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Vargas Peña",
|
||||
"name": "Luis Vargas Peña",
|
||||
"minute": 40
|
||||
}
|
||||
],
|
||||
@@ -481,33 +481,33 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Monti",
|
||||
"name": "Luis Monti",
|
||||
"minute": 20
|
||||
},
|
||||
{
|
||||
"name": "Scopelli",
|
||||
"name": "Alejandro Scopelli",
|
||||
"minute": 56
|
||||
},
|
||||
{
|
||||
"name": "Stábile",
|
||||
"name": "Guillermo Stábile",
|
||||
"minute": 69
|
||||
},
|
||||
{
|
||||
"name": "Stábile",
|
||||
"name": "Guillermo Stábile",
|
||||
"minute": 87
|
||||
},
|
||||
{
|
||||
"name": "Peucelle",
|
||||
"name": "Carlos Peucelle",
|
||||
"minute": 80
|
||||
},
|
||||
{
|
||||
"name": "Peucelle",
|
||||
"name": "Carlos Peucelle",
|
||||
"minute": 85
|
||||
}
|
||||
],
|
||||
"goals2": [
|
||||
{
|
||||
"name": "Brown",
|
||||
"name": "Jim Brown",
|
||||
"minute": 89
|
||||
}
|
||||
],
|
||||
@@ -527,33 +527,33 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Cea",
|
||||
"name": "Pedro Cea",
|
||||
"minute": 18
|
||||
},
|
||||
{
|
||||
"name": "Cea",
|
||||
"name": "Pedro Cea",
|
||||
"minute": 67
|
||||
},
|
||||
{
|
||||
"name": "Cea",
|
||||
"name": "Pedro Cea",
|
||||
"minute": 72
|
||||
},
|
||||
{
|
||||
"name": "Anselmo",
|
||||
"name": "Peregrino Anselmo",
|
||||
"minute": 20
|
||||
},
|
||||
{
|
||||
"name": "Anselmo",
|
||||
"name": "Peregrino Anselmo",
|
||||
"minute": 31
|
||||
},
|
||||
{
|
||||
"name": "Iriarte",
|
||||
"name": "Santos Iriarte",
|
||||
"minute": 61
|
||||
}
|
||||
],
|
||||
"goals2": [
|
||||
{
|
||||
"name": "Vujadinović",
|
||||
"name": "Đorđe Vujadinović",
|
||||
"minute": 4
|
||||
}
|
||||
],
|
||||
@@ -573,29 +573,29 @@
|
||||
},
|
||||
"goals1": [
|
||||
{
|
||||
"name": "Dorado",
|
||||
"name": "Pablo Dorado",
|
||||
"minute": 12
|
||||
},
|
||||
{
|
||||
"name": "Cea",
|
||||
"name": "Pedro Cea",
|
||||
"minute": 57
|
||||
},
|
||||
{
|
||||
"name": "Iriarte",
|
||||
"name": "Santos Iriarte",
|
||||
"minute": 68
|
||||
},
|
||||
{
|
||||
"name": "Castro",
|
||||
"name": "Héctor Castro",
|
||||
"minute": 89
|
||||
}
|
||||
],
|
||||
"goals2": [
|
||||
{
|
||||
"name": "Peucelle",
|
||||
"name": "Carlos Peucelle",
|
||||
"minute": 20
|
||||
},
|
||||
{
|
||||
"name": "Stábile",
|
||||
"name": "Guillermo Stábile",
|
||||
"minute": 37
|
||||
}
|
||||
],
|
||||
|
||||
Reference in New Issue
Block a user