transfermarkt-wrapper 0.0.8
Python API wrapper for Transfermarkt undocumented API
License: MIT
Requires Python: >=3.8
Keywords: transfermarkt tmk football soccer fotmob sofascore flashscore api wrapper

# TMKT - Transfermarkt API Wrapper

A Python wrapper for the Transfermarkt API, providing easy access to football (soccer) data including players, clubs, competitions, transfers, and more.

[![PyPI Downloads](https://static.pepy.tech/badge/transfermarkt-wrapper)](https://pepy.tech/projects/transfermarkt-wrapper)

## Features

- **Player Data**: Transfers, injuries, profiles
- **Club Data**: Squads, stadiums, transfers
- **Competition Data**: Tables, participating clubs
- **Search Functionality**: Players, clubs, leagues
- **Clean Data Parsing**: Automatic HTML-to-text conversion for search results

## Installation

```bash
pip install transfermarkt-wrapper
```

## Example usage

```py
from tmkt import TMKT
import asyncio

import json

async def main():
    async with TMKT() as tmkt:
        # Search for a league
        leagues = await tmkt.league_search("Premier League")
        print(json.dumps(leagues, indent = 4))

        # Get player data
        player = await tmkt.get_player(433177)  # Bukayo Saka
        print(json.dumps(player, indent = 4))

asyncio.run(main())
```

## Complete API Reference

### Player Endpoints

| Method | Description | Example |
|--------|-------------|---------|
| `get_player(playerId: int)` | Get player profile | `get_player(433177)` |
| `get_player_transfers(playerId: int)` | Get player's transfer history | `get_player_transfers(433177)` |
| `get_player_injuries(playerId: int)` | Get player's injury history | `get_player_injuries(433177)` |
| `get_player_stats(playerId: int, season: int = None)` | Get player's seasonal stats | `get_player_stats(433177)` |
| `get_player_stats_per_club(playerId: int)` | Get player's stats per club | `get_player_stats_per_club(433177)` |
| `get_player_stats_per_competition(playerId: int)` | Get player's stats per comp | `get_player_stats_per_competition(433177)` |
| `get_player_stats_national_career(playerId: int)` | Get player's national career stats | `get_player_stats_national_career(433177)` |
| `get_player_news(playerId: int)` | Get player relevant news | `get_player_news(433177)` |
| `player_search(query: str)` | Search players by name | `player_search("Saka")` |

### Club Endpoints

| Method | Description | Example |
|--------|-------------|---------|
| `get_club(clubId: int)` | Get club profile | `get_club(11)` (Arsenal) |
| `get_club_transfers(clubId: int)` | Get club's transfer history | `get_club_transfers(11)` |
| `get_club_squad(clubId: int)` | Get current squad | `get_club_squad(11)` |
| `get_club_stadium(clubId: int)` | Get stadium info | `get_club_stadium(11)` |
| `get_club_news(clubId: int)` | Get club relevant news | `get_club_news(11)` |
| `club_search(query: str)` | Search clubs by name | `club_search("Arsenal")` |

### Competition Endpoints

| Method | Description | Example |
|--------|-------------|---------|
| `get_competition(competitionId: str)` | Get competition profile | `get_competition("GB1")` |
| `get_competition_transfers(competitionId: str)` | Get competition transfers | `get_competition_transfers("GB1")` |
| `get_competition_clubs(competitionId: str)` | Get participating clubs | `get_competition_clubs("GB1")` |
| `get_competition_table(competitionId: str)` | Get current standings | `get_competition_table("GB1")` |
| `get_current_season(competitionId: str)` | Get league current season | `get_current_season("GB1")` |
| `get_competition_news(competitionId: str)` | Get competition relevant news | `get_competition_news("GB1")` |
| `competition_search(query: str)` | Search leagues by name | `competition_search("Premier League")` |


### Match Endpoints

| Method | Description | Example |
|--------|-------------|---------|
| `get_match(matchId: int)` | Get match details | `get_match(4625790)` |

### General Endpoints

| Method | Description | Example |
|--------|-------------|---------|
| `get_all_transfers()` | Get latest transfers | `get_all_transfers()` |
| `get_coach(coachId: int)` | Get coach details | `get_coach(7451)` |
| `get_coach_news(coachId: int)` | Get coach relevant news | `get_coach_news(7451)` |