Il progetto ora include una moderna interfaccia a riga di comando con funzionalità avanzate:
# Install dependencies
poetry install
# CLI Usage Options:
# Option 1: Direct python module
poetry run python cli.py --help
# Option 2: Use wrapper scripts
./fantacalcio.sh --help # Linux/Mac
fantacalcio.cmd --help # Windows
# Option 3: Add alias (optional)
alias fantacalcio="poetry run python cli.py"# Installa il pack di estensioni Python
code --install-extension ms-python.python
# Crea l'ambiente all'interno di una cartella .venv nel progetto stesso
poetry config virtualenvs.in-project true
# Installa i pacchetti poetry
poetry installAvvia una delle configurazioni già presenti o creane una nuova.
# Esegue l'intera pipeline (scraping + analisi)
poetry run python cli.py run
# Con opzioni avanzate
poetry run python cli.py run --source fpedia --top 30 --force-scrape# Scarica dati da tutte le fonti
poetry run python cli.py scrape
# Solo da una fonte specifica
poetry run python cli.py scrape --source fpedia
poetry run python cli.py scrape --source fstats
# Forza il re-download
poetry run python cli.py scrape --force# Analizza tutti i dati disponibili (genera Excel + JSON)
poetry run python cli.py analyze
# Analizza solo una fonte
poetry run python cli.py analyze --source fpedia
# Analiza tutto e crea dataset unificato
poetry run python cli.py analyze --source all
# Mostra top 20 giocatori nel summary
poetry run python cli.py analyze --top 20
# Output personalizzato
poetry run python cli.py analyze --output ./custom_output/Output generati automaticamente:
fpedia_analysis.xlsx+fpedia_analysis.jsonFSTATS_analysis.xlsx+FSTATS_analysis.jsonunified_analysis.xlsx+unified_analysis.json(con--source all)
# Visualizza preview dei dati FPEDIA
poetry run python cli.py inspect --source fpedia
# Filtra per ruolo
poetry run python cli.py inspect --source fpedia --role Attaccanti
# Filtra per squadra
poetry run python cli.py inspect --source fstats --team Milan --limit 15# Controlla stato dei file e configurazione
poetry run python cli.py status🆕 Novità: Ogni comando di analisi genera automaticamente file JSON oltre agli Excel!
# Tutti questi comandi generano sia .xlsx che .json
poetry run python cli.py analyze --source fpedia
poetry run python cli.py analyze --source fstats
poetry run python cli.py analyze --source all
poetry run python cli.py runStruttura JSON generata:
{
"metadata": {
"source": "fpedia",
"total_players": 523,
"generated_at": "2025-01-15T14:30:45.123456",
"columns": ["Nome", "Ruolo", "Squadra", "Convenienza Potenziale", ...]
},
"players": [
{
"Nome": "LOOKMAN ADEMOLA",
"Ruolo": "ATT",
"Squadra": "Atalanta",
"Convenienza Potenziale": 128.0,
...
}
]
}Vantaggi dell'export JSON:
- 📊 Integrazione facile con altri tools e API
- 🔍 Metadata strutturati per analisi avanzate
- 🚀 Performance migliori per applicazioni web
- 📱 Mobile-friendly per app e dashboard
- 🔄 Automatico - nessun comando aggiuntivo necessario
- Progress bars animate con Rich
- Indicatori di performance in tempo reale
- Stima tempi di completamento
- Gestione errori visuale
- Tabelle formattate con evidenziazione dei migliori giocatori
- Codici colore per metriche di convenienza
- Emoji e icone per migliore UX
- Layout responsive
- Log JSON per analisi avanzate
- Metriche di performance automatiche
- Tracking qualità dati
- Output Rich per sviluppo
# Verbose mode per debugging
poetry run python cli.py --verbose run
# Combinando opzioni
poetry run python cli.py -v run --source all --top 20🏆 Top 20 Players - FPEDIA
┌─────┬────────────────┬──────────────┬──────────┬─────────────┐
│ 🏅 │ 👤 Name │ ⚽ Role │ 🏟️ Team │ 💎 Conv... │
│ Rank │ │ │ │ │
├─────┼────────────────┼──────────────┼──────────┼─────────────┤
│ 🥇 1 │ Lautaro │ Attaccanti │ Inter │ 15.32 │
│ 🥈 2 │ Vlahovic │ Attaccanti │ Juventus │ 12.87 │
│ 🥉 3 │ Osimhen │ Attaccanti │ Napoli │ 11.45 │
└─────┴────────────────┴──────────────┴──────────┴─────────────┘
📋 Fantacalcio-PY Status
┌─────────────────┬──────────┬─────────────────────────────┐
│ Component │ Status │ Details │
├─────────────────┼──────────┼─────────────────────────────┤
│ FPEDIA Data │ ✅ Ready │ 2847 KB │
│ FSTATS Data │ ✅ Ready │ 1923 KB │
│ Output Dir │ ✅ Ready │ data/output │
│ Environment │ ✅ Found │ .env file for FSTATS creds │
└─────────────────┴──────────┴─────────────────────────────┘
| Feature | Originale | Nuova CLI |
|---|---|---|
| Interface | Script singolo | Comandi modulari |
| Progress | tqdm basic | Rich animated |
| Output | Solo Excel | Excel + JSON automatico |
| Export Formats | .xlsx | .xlsx + .json con metadata |
| Unified Analysis | Solo main.py | Anche in CLI |
| Config | Hard-coded | YAML flessibile |
| Logging | Loguru basic | Strutturato JSON |
| Error Handling | Minimo | Robusto con retry |
| UX | Funzionale | Moderno e intuitivo |
Il vecchio main.py continua a funzionare, ma la nuova CLI offre:
- Migliore esperienza utente
- Configurazione flessibile
- Migliore debugging
- Funzionalità modulari
Per utilizzare la nuova CLI, installa le dipendenze e usa fantacalcio invece di python main.py.
- Usa
fantacalcio statusper verificare tutto prima di iniziare - Configura logging verbose con
-vper debugging - Personalizza config YAML per le tue esigenze
- Usa filters con
inspectper esplorare i dati - Combina
--force-scrapecon--sourceper aggiornamenti mirati - 🆕 File JSON automatici - ideali per integrazioni con dashboard e API
- 🆕 Dataset unificato - usa
--source allper combinare FPEDIA + FSTATS - 🆕 Metadata JSON - timestamp e info utili per tracking cronologico