Obtener tabla de clasificación de fútbol con API gratuita

Para los aficionados al deporte es común seguir los partidos, actualizar resultados, clasificaciones e información de los jugadores. Hay muchos sitios web, API que nos brindan dichos datos.

Sin embargo, hoy me gustaría presentarles cómo obtener las clasificaciones de las mejores ligas de fútbol mediante la API gratuita en apifootball.com. Los resultados se muestran a continuación. Simplemente consígalos y muéstrelos en su sitio web.

Inglaterra-Premier-League (el ID de liga es 148)

Usamos Laravel con VueJS para hacer esto.

  1. Ruta:

La primera es la definición de ruta.

// Route get rankings by tournament
Route::get(‘/standings/{leagueId}’, ‘Sport\FootballController@standings’);

// Route get team information in a tournament
Route::get(‘/teams/{leagueId}/{team_id}’, ‘Sport\FootballController@getTeams’);

// Route retrieves player details
Route::get(‘/players/{team_key}/{player_name}’, ‘Sport\FootballController@getPlayers’);

  1. Controlador

Debe registrar una API en la página apifootball.com, después de tener esta clave API, la usamos para obtener datos a través del controlador.

Tu api

Los ID de los torneos (league_id) se proporcionarán aquí: https://apifootball.com/coverage/

ID de los torneos (league_id)

Las tres funciones del controlador tienen los siguientes significados:

– posiciones($leagueId): Clasificación de un torneo.
– getTeams($league_id, $team_id): Información del equipo en un torneo.
– getPlayers($team_key, $player_name): Detalles de los jugadores del equipo.

En el archivo FootballController: App\Http\Controllers\Api\Sport

namespace App\Http\Controllers\Api\Sport;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class FootballController extends Controller
{
private $api_key;

public function __construct($api_key = ‘YOUR_API_KEY’)
{
$this->api_key = $api_key;
}

public function standings($leagueId)
{
$APIkey = $this->api_key;
$curl_options = array(
CURLOPT_URL => “https://apiv2.apifootball.com/?action=get_standings&league_id=$leagueId&APIkey=$APIkey”,

CURLOPT_RETURNTRANSFER => true,
CURLOPT_HEADER => false,
CURLOPT_TIMEOUT => 30,
CURLOPT_CONNECTTIMEOUT => 5
);

$curl = curl_init();
curl_setopt_array( $curl, $curl_options );
$result = curl_exec( $curl );
$result = (array) json_decode($result);

return $result;
}

public function getTeams(Request $request, $league_id, $team_id)
{
// Because the code is quite long, I will put it in the download file at the bottom of the page
}

public function getPlayers(Request $request, $team_key, $player_name)
{
// Because the code is quite long, I will put it in the download file at the bottom of the page
}
}

3.VueJS

– En el archivo app.js: resource/js/app.js

require(‘./bootstrap’);

import Vue from ‘vue’;
import VueRouter from ‘vue-router’;

Vue.use(VueRouter);

import App from ‘./views/App’

// Fooball
import Standing from ‘./components/Football/StandingTable’;
import GetTeams from ‘./components/Football/GetTeams’;
import GetPlayers from ‘./components/Football/GetPlayers’;

const router = new VueRouter({
mode: ‘history’,
routes: [
{
path: ‘/’,
name: ‘home’,
component: Home
},
{
path: ‘/standings/:leagueId’,
name: ‘fb.standing’,
component: Standing
},
{
path: ‘/teams/:leagueId/:team_id’,
name: ‘fb.getTeams’,
component: GetTeams
},
{
path: ‘/players/:team_key/:player_name’,
name: ‘fb.getPlayers’,
component: GetPlayers
},

// …
],

});

const app = new Vue({
el: ‘#app’,
components: { App, Datepicker },
router,
});

– En el archivo StandingTable.vue: recurso/js/components/Football/StandingTable.vue
// Debido a que el código es bastante largo, lo colocaré en el archivo de descarga al final de la página

– En el archivo GetTeams: recurso/js/components/Football/GetTeams.vue
// Debido a que el código es bastante largo, lo colocaré en el archivo de descarga al final de la página

– En el archivo GetPlayers: recurso/js/components/Football/GetPlayers.vue
// Debido a que el código es bastante largo, lo colocaré en el archivo de descarga al final de la página.

Primero, supongo que pasas leagueId = 148 (Inglaterra – Premier League), que será como se muestra arriba.

Con leagueId = 468 (LaLiga), veremos lo siguiente.

La Liga (el ID de la liga es 468)

– Haga clic en Ver detalles para ver información detallada.

Detalle del equipo Barcenola

Le deseo éxito con esta API gratuita, Laravel y VueJS gracias por leer el artículo.

Descargar código completo

Deja un comentario