Skip to main content

Futbol maçlarını haftalara bölen ve puan durumu hesaplayan profesyonel servis

Project description

Week Service

Futbol maçlarını haftalara bölen ve puan durumu tablolarını oluşturan yüksek performanslı servis.

🚀 Kurulum

pip install week-service

📋 Özellikler

  • Yüksek Performans: COPY komutu ile toplu veri işleme
  • 📊 Haftalık Bölümleme: Maçları otomatik haftalara böler
  • 🏆 Puan Durumu: Haftalık ve güncel puan durumlarını hesaplar
  • 🔒 .env Desteği: Güvenli veritabanı yapılandırması
  • 🎯 Esnek Filtreleme: Status bazlı akıllı filtreleme

⚙️ Yapılandırma

.env dosyası oluşturun:

DB_HOST=localhost
DB_PORT=5432
DB_NAME=football_db
DB_USER=your_user
DB_PASSWORD=your_password

MIN_MATCHES=5
BATCH_SIZE=10

💻 Kullanım

CLI (Command Line)

# Güncel sezonları işle
week-service

# Tüm sezonları işle
week-service --all

# Minimum maç sayısı belirle
week-service --min-matches 10

# Test için limit koy
week-service --limit 50

Python Kodu

from week_service import WeekService

# Servis oluştur
service = WeekService()

# Tüm ligleri işle
service.process_all_leagues_bulk(
    min_matches=5,
    limit=None
)

📊 Veritabanı Tabloları

match_weeks

Maçların haftalık bölümlenmesi:

  • match_id, season_id, week_number
  • home_team, away_team, status
  • match_date, match_time

weekly_standings

Haftalık puan durumları:

  • season_id, week_number, team_id
  • position, played, wins, draws, losses
  • points, goals_for, goals_against

current_standings

Güncel puan durumları (son hafta)

📈 Performans

  • 77,701 maç → 6 dakika
  • 401 lig → Tek batch işlem
  • 155,733 puan durumu → COPY ile toplu kayıt

🗂️ Proje Yapısı

week_service/
├── core/
│   ├── database.py           # .env destekli DB bağlantısı
│   ├── match_loader.py       # Maç yükleme
│   ├── week_divider.py       # Hafta bölme
│   └── standings_calculator.py  # Puan durumu
├── utils/
│   └── logger.py             # Loglama
├── cli.py                    # CLI arayüzü
├── week_service.py           # Ana servis
└── setup.py                  # PyPI paketi

📄 Lisans

MIT License

🤝 Katkıda Bulunma

Pull request'ler memnuniyetle karşılanır!

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

week_service-1.0.2.tar.gz (17.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

week_service-1.0.2-py3-none-any.whl (17.2 kB view details)

Uploaded Python 3

File details

Details for the file week_service-1.0.2.tar.gz.

File metadata

  • Download URL: week_service-1.0.2.tar.gz
  • Upload date:
  • Size: 17.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for week_service-1.0.2.tar.gz
Algorithm Hash digest
SHA256 0070600763fb34cd789d6585d4562ab5758dd3bfe3dbaa7f9bcfa5d1c3411599
MD5 a2456df5bd48c2182857a9c470e6535a
BLAKE2b-256 7db103a9b01697b513e99c980a9d64ea5a566bdec95f8728d51d39909b11a23d

See more details on using hashes here.

File details

Details for the file week_service-1.0.2-py3-none-any.whl.

File metadata

  • Download URL: week_service-1.0.2-py3-none-any.whl
  • Upload date:
  • Size: 17.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.7

File hashes

Hashes for week_service-1.0.2-py3-none-any.whl
Algorithm Hash digest
SHA256 40f9bf74f677f4e503d8e91f6947012341ee04191bcf30f026d55bf24ab438e8
MD5 0f04f0d6e98bade16e08e211bcb8d6d4
BLAKE2b-256 209046aa05e46a4aa7fde01c065d7337c8376d200f3035c4bc5fbe241f0624ff

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page