Intéressé par l'analyse du football ?

DDD
Libérer: 2024-09-14 06:19:32
original
1288 Les gens l'ont consulté

J'ai récemment commencé mon voyage en plongeant dans l'analyse du football et j'ai créé un exemple de programme Python qui fait référence à https://understat.com/ pour récupérer les données de tir d'un seul match.

Cela marque le début de mon voyage dans la manipulation de données. Je suis ravi de plonger plus profondément dans ce domaine et j'ai hâte de partager plus de mises à jour au fur et à mesure de mes progrès.

Repo :
https://github.com/UribeJr/football-data-scraper-to-csv-exporter

#!/usr/bin/env python
# coding: utf-8

# In[2]:


#import modules and packages
import requests
from bs4 import BeautifulSoup
import json
import pandas as pd


# In[3]:


#scrape single game shots
base_url = 'https://understat.com/match/'
match = str(input("Enter your match ID: "))
url = base_url + match


# In[16]:


res = requests.get(url)
soup = BeautifulSoup(res.content, 'lxml')
span = soup.find('span')
script = soup.find_all('script')
script


# In[18]:


string = script[1].string
string


# In[26]:


#strip symbols so we only have json data
index_start = string.index("('") + 2
index_end = string.index("')")

json_data = string[index_start:index_end]
json_data = json_data.encode('utf8').decode('unicode_escape')
data = json.loads(json_data)


# In[35]:


df_h = pd.DataFrame(data['h'])
print("Home Team DataFrame:")
print(df_h.head())


# In[37]:


# Save the home team DataFrame to a CSV file
df_h.to_csv('home_team_shots.csv', index=False)


# In[ ]:
Copier après la connexion

Comment

  • Importez toutes les demandes de packages/modules nécessaires, pandas, BeautifulSoup
  • Allez sur https://understat.com/ et accédez à n'importe quel match pour lequel vous souhaitez des données de tir spécifiques. L'URL de correspondance devrait ressembler à ce qui suit : https://understat.com/match/{match-id}
  • Exécutez data_scraping.py et saisissez l'identifiant de correspondance

Félicitations!

Le programme récupère ensuite les données de tir du match et convertit les données de chaque équipe à domicile et à l'extérieur dans une trame de données distincte. Les trames de données sont ensuite exportées sous forme de fichiers CSV distincts pour référence.

Trame de données :

Interested in Football Analytics?

CSV :

Interested in Football Analytics?

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal