Python API wrapper for OneFootball undocumented API
Project description
onefootball-wrapper - A OneFootball API Wrapper
A Python wrapper for the OneFootball API, providing easy access to football (soccer) data including players, clubs, competitions, transfers, and more.
Features
- Player Data: Transfers, injuries, profiles
- Club Data: Squads, stadiums, transfers
- Competition Data: Tables, participating clubs
- Search Functionality: Players, clubs, leagues
Installation
pip install onefootball-wrapper
Example usage
import asyncio
from onefootball import OneFootball
import json
async def main():
async with OneFootball() as of:
# Search for players
results = await of.search("saka")
print(json.dumps(results, indent = 4))
# Get team information
team = await of.get_team(2) # Arsenal
print(json.dumps(team, indent = 4))
# Get today's matches
matches = await of.get_today_matches()
print(json.dumps(matches, indent = 4))
asyncio.run(main())
Complete API Reference
Search Endpoints
| Method | Description | Example |
|---|---|---|
search(query: str) |
Search for players, teams, etc. | search("saka") |
search_players(query: str) |
Search for players | search("saka") |
search_teams(query: str) |
Search for teams | search_teams("arsenal") |
search_competitions(query: str) |
Search for competitions | search_competitions("premier league") |
search_news(query: str) |
Search for news | search_news("premier league") |
Team Endpoints
| Method | Description | Example |
|---|---|---|
get_team(team_id: int) |
Get team data | get_team(2) |
get_team_transfers(team_id: int) |
Get team transfers | get_team_transfers(2) |
get_team_relevant_items(team_id: int) |
Get team relevant news | get_team_relevant_items(2) |
get_team_news(team_id: int) |
Get team news | get_team_news(2) |
get_team_season_stats(team_id: int, season_id: int, current_group: int = 1, games_n: int = 5) |
Get team season stats | get_team_season_stats(2, 43029) |
get_team_fixtures(team_id: int, since_date: Optional[date] = None) |
Get team fixtures | get_team_fixtures(2) |
get_team_next_match(team_id: int) |
Get team next fixture | get_team_next_match(2) |
get_team_previous_match(team_id: int, until_date: Optional[str] = None) |
Get team last fixture | get_team_previous_match(2) |
Competition Endpoints
| Method | Description | Example |
|---|---|---|
get_competition_top_players(competition_id: int) |
Get top players in a competition | get_competition_top_players(9) |
get_competition_stats(competition_id: int, season_id: int) |
Get competition statistics | get_competition_stats(9, 43029) |
get_competition(competition_id: int) |
Get competition info | get_competition(9) |
get_competition_matches(competition_id: int, number_next: int = 1, number_previous: int = 1) |
Get competition matches | get_competition_matches(9) |
get_competition_standings(competition_id: int, season_id: int) |
Get competition standings | get_competition_standings(9, 43029) |
get_competition_video_news(competition_id: int) |
Get competition video news | get_competition_video_news(9) |
get_competition_news(competition_id: int) |
Get competition news | get_competition_news(9) |
get_competition_transfers(competition_id: int) |
Get competition transfers | get_competition_transfers(9) |
get_competition_matchdays(competition_id: int, season_id: int) |
Get competition matchdays | get_competition_matchdays(9, 43029) |
get_all_competitions() |
Get all competitions | get_all_competitions() |
Match Endpoints
| Method | Description | Example |
|---|---|---|
get_match(match_id: int, country: str = "gb") |
Get match information | get_match(2595592) |
get_match_news(match_id: int, country: str = "gb") |
Get match news | get_match_news(2595592) |
get_match_tv_listings(match_id: int, country: str = "gb") |
Get match TV listings | get_match_tv_listings(2595592) |
get_match_widget(match_id: int) |
Get live match widget | get_match_widget(2595592) |
get_match_predictions(match_id: int) |
Get match prediction votes | get_match_predictions(2595592) |
get_match_odds(match_id: int, bookmaker_id: int = 3) |
Get match odds | get_match_odds(2595592) |
get_today_matches() |
Get today's matches | get_today_matches() |
get_live_matches() |
Get live matches | get_live_matches() |
get_tomorrow_matches() |
Get tomorrow's matches | get_tomorrow_matches() |
get_matches_by_date(match_date: date)() |
Get matches by specific date | get_matches_by_date(date(2025, 9, 14)) |
Player Endpoints
| Method | Description | Example |
|---|---|---|
get_player_transfers(player_id: int) |
Get player transfers | get_player_transfers(257485) |
get_player_stats(player_slug: str) |
Get player stats by slug | get_player_stats("bukayo-saka-257485") |
get_player_competition_stats(player_slug: str, season_id: int) |
Get player competition stats | get_player_competition_stats("bukayo-saka-257485", 43072) |
get_player_news(player_slug: str) |
Get player news by slug | get_player_competition_stats("get_player_news("bukayo-saka-257485") |
Rate Limiting
Be mindful of rate limits when making multiple requests. Consider adding delays between requests if you're making many calls in succession.
Contributing
Contributions are welcome! Please feel free to submit a Pull Request.
License
This project is licensed under the MIT License.
Tips and Tricks
- If a function requires a slug, You have to splice it from the returned URL, for example the player URL as the API does not directly provide that.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file onefootball_wrapper-0.0.1.tar.gz.
File metadata
- Download URL: onefootball_wrapper-0.0.1.tar.gz
- Upload date:
- Size: 7.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0225ea84396d32ed44fc2bd50fe56b1878488961c6d023708b679874295ff20f
|
|
| MD5 |
c866dc0b87a759c9985f5c4daf228d9e
|
|
| BLAKE2b-256 |
689d41c3a4906ac913cb89a9bca4994d9be281963418169a96d99b23f68a04c4
|
File details
Details for the file onefootball_wrapper-0.0.1-py3-none-any.whl.
File metadata
- Download URL: onefootball_wrapper-0.0.1-py3-none-any.whl
- Upload date:
- Size: 7.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
42359e6fa1412f3014e796b39490f1c037eeb5ff86ccf6d6e8124a9844c11ce6
|
|
| MD5 |
20cc32da0c6ef83f9610697157e2839a
|
|
| BLAKE2b-256 |
1e09ec21c406dab5915cc1c0826ff851a1f1da5af93782858588a6f0f29724bc
|