# MySoccer Update
🚀 Mackolik.com API'den futbol maç verilerini çeken profesyonel Python kütüphanesi.
## 📦 Kurulum
```bash
pip install mysoccer-update
```
## 🚀 Hızlı Başlangıç
```python
from mysoccer_update import ResultsAPI, FixturesAPI
# Sonuçları güncelle
results = ResultsAPI()
results.auto_update() # Dün + Bugün + Yarın
# Fikstürleri çek
fixtures = FixturesAPI()
data = fixtures.get_next_3_days()
```
## ✨ Özellikler
- ✅ **Modüler Yapı** - Temiz ve genişletilebilir
- ✅ **Hızlı** - BULK INSERT ile saniyede 1000+ maç
- ✅ **Güvenilir** - Otomatik retry mekanizması
- ✅ **Kolay Kullanım** - 3 satır kod yeterli
- ✅ **Status Filtresi** - Status < 13 (0-12 arası tüm maçlar)
## 📚 Dokümantasyon
### Sonuçlar (Maçlar)
```python
from mysoccer_update import ResultsAPI
results = ResultsAPI()
# Bugünü güncelle
results.update_today()
# Tarih aralığı
results.update_date_range('01/01/2025', '31/12/2025')
# Tek tarih
results.update_single_date('15/10/2025')
# Otomatik (Dün + Bugün + Yarın)
results.auto_update()
```
### Fikstürler (Gelecek Maçlar)
```python
from mysoccer_update import FixturesAPI
fixtures = FixturesAPI()
# 3 günlük fikstür
data = fixtures.get_next_3_days()
# Veritabanına kaydet
fixtures.save_to_database(data)
# Excel'e aktar
fixtures.export_to_excel(data, 'fixtures.xlsx')
```
## ⚙️ Yapılandırma
### 🔒 Güvenli Yöntem: .env Dosyası (Önerilen)
```bash
# .env dosyası oluştur
DB_HOST=your-host.com
DB_PORT=5432
DB_NAME=mackolik_db
DB_USER=your_user
DB_PASSWORD=your_password
```
```python
from mysoccer_update import ResultsAPI
# .env dosyasından otomatik okur!
results = ResultsAPI()
results.update_today()
```
## 📊 Status Filtresi
- **Status < 13**: 0-12 arası tüm maçlar (oynanacak, oynanan, biten)
- Otomatik filtreleme yapılır
## 🔄 Versiyon 1.0.1
- ✅ Status filtresi güncellendi (status < 13)
- ✅ Tüm maç durumları destekleniyor
## 📄 Lisans
MIT License
## 🔗 Bağlantılar
- PyPI: https://pypi.org/project/mysoccer-update
Raw data
{
"_id": null,
"home_page": "https://github.com/ahmety/mysoccer-update",
"name": "mysoccer-update",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": null,
"keywords": "football soccer data scraping mackolik api mysoccer",
"author": "ahmety",
"author_email": "your-email@example.com",
"download_url": "https://files.pythonhosted.org/packages/16/2b/9c911b1a24e4c00ef9273715a250a8444f2ab29d4f610e025f84b6c56ce1/mysoccer_update-1.0.1.tar.gz",
"platform": null,
"description": "# MySoccer Update\r\n\r\n\ud83d\ude80 Mackolik.com API'den futbol ma\u00e7 verilerini \u00e7eken profesyonel Python k\u00fct\u00fcphanesi.\r\n\r\n## \ud83d\udce6 Kurulum\r\n```bash\r\npip install mysoccer-update\r\n```\r\n\r\n## \ud83d\ude80 H\u0131zl\u0131 Ba\u015flang\u0131\u00e7\r\n```python\r\nfrom mysoccer_update import ResultsAPI, FixturesAPI\r\n\r\n# Sonu\u00e7lar\u0131 g\u00fcncelle\r\nresults = ResultsAPI()\r\nresults.auto_update() # D\u00fcn + Bug\u00fcn + Yar\u0131n\r\n\r\n# Fikst\u00fcrleri \u00e7ek\r\nfixtures = FixturesAPI()\r\ndata = fixtures.get_next_3_days()\r\n```\r\n\r\n## \u2728 \u00d6zellikler\r\n- \u2705 **Mod\u00fcler Yap\u0131** - Temiz ve geni\u015fletilebilir\r\n- \u2705 **H\u0131zl\u0131** - BULK INSERT ile saniyede 1000+ ma\u00e7\r\n- \u2705 **G\u00fcvenilir** - Otomatik retry mekanizmas\u0131\r\n- \u2705 **Kolay Kullan\u0131m** - 3 sat\u0131r kod yeterli\r\n- \u2705 **Status Filtresi** - Status < 13 (0-12 aras\u0131 t\u00fcm ma\u00e7lar)\r\n\r\n## \ud83d\udcda Dok\u00fcmantasyon\r\n\r\n### Sonu\u00e7lar (Ma\u00e7lar)\r\n```python\r\nfrom mysoccer_update import ResultsAPI\r\n\r\nresults = ResultsAPI()\r\n\r\n# Bug\u00fcn\u00fc g\u00fcncelle\r\nresults.update_today()\r\n\r\n# Tarih aral\u0131\u011f\u0131\r\nresults.update_date_range('01/01/2025', '31/12/2025')\r\n\r\n# Tek tarih\r\nresults.update_single_date('15/10/2025')\r\n\r\n# Otomatik (D\u00fcn + Bug\u00fcn + Yar\u0131n)\r\nresults.auto_update()\r\n```\r\n\r\n### Fikst\u00fcrler (Gelecek Ma\u00e7lar)\r\n```python\r\nfrom mysoccer_update import FixturesAPI\r\n\r\nfixtures = FixturesAPI()\r\n\r\n# 3 g\u00fcnl\u00fck fikst\u00fcr\r\ndata = fixtures.get_next_3_days()\r\n\r\n# Veritaban\u0131na kaydet\r\nfixtures.save_to_database(data)\r\n\r\n# Excel'e aktar\r\nfixtures.export_to_excel(data, 'fixtures.xlsx')\r\n```\r\n\r\n## \u2699\ufe0f Yap\u0131land\u0131rma\r\n\r\n### \ud83d\udd12 G\u00fcvenli Y\u00f6ntem: .env Dosyas\u0131 (\u00d6nerilen)\r\n```bash\r\n# .env dosyas\u0131 olu\u015ftur\r\nDB_HOST=your-host.com\r\nDB_PORT=5432\r\nDB_NAME=mackolik_db\r\nDB_USER=your_user\r\nDB_PASSWORD=your_password\r\n```\r\n\r\n```python\r\nfrom mysoccer_update import ResultsAPI\r\n\r\n# .env dosyas\u0131ndan otomatik okur!\r\nresults = ResultsAPI()\r\nresults.update_today()\r\n```\r\n\r\n## \ud83d\udcca Status Filtresi\r\n- **Status < 13**: 0-12 aras\u0131 t\u00fcm ma\u00e7lar (oynanacak, oynanan, biten)\r\n- Otomatik filtreleme yap\u0131l\u0131r\r\n\r\n## \ud83d\udd04 Versiyon 1.0.1\r\n- \u2705 Status filtresi g\u00fcncellendi (status < 13)\r\n- \u2705 T\u00fcm ma\u00e7 durumlar\u0131 destekleniyor\r\n\r\n## \ud83d\udcc4 Lisans\r\nMIT License\r\n\r\n## \ud83d\udd17 Ba\u011flant\u0131lar\r\n- PyPI: https://pypi.org/project/mysoccer-update\r\n",
"bugtrack_url": null,
"license": null,
"summary": "Mackolik.com API'den futbol ma\u00e7 verilerini \u00e7eken mod\u00fcler Python k\u00fct\u00fcphanesi",
"version": "1.0.1",
"project_urls": {
"Bug Tracker": "https://github.com/ahmety/mysoccer-update/issues",
"Documentation": "https://github.com/ahmety/mysoccer-update#readme",
"Homepage": "https://github.com/ahmety/mysoccer-update",
"Source Code": "https://github.com/ahmety/mysoccer-update"
},
"split_keywords": [
"football",
"soccer",
"data",
"scraping",
"mackolik",
"api",
"mysoccer"
],
"urls": [
{
"comment_text": null,
"digests": {
"blake2b_256": "84683108313231e227309adcdf6ac0114ab46e0e1300037f87f58b0f8e86d2bd",
"md5": "95aa381d6623d8c2b54860d30bdbcf65",
"sha256": "589746b051c6d805240b4d28f1d4ec8c2c5af67d04c6cb9f4c029f8d8a505035"
},
"downloads": -1,
"filename": "mysoccer_update-1.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "95aa381d6623d8c2b54860d30bdbcf65",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 35572,
"upload_time": "2025-10-22T00:25:36",
"upload_time_iso_8601": "2025-10-22T00:25:36.089504Z",
"url": "https://files.pythonhosted.org/packages/84/68/3108313231e227309adcdf6ac0114ab46e0e1300037f87f58b0f8e86d2bd/mysoccer_update-1.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": null,
"digests": {
"blake2b_256": "162b9c911b1a24e4c00ef9273715a250a8444f2ab29d4f610e025f84b6c56ce1",
"md5": "dd1becbbf83346a652237dc96821d435",
"sha256": "773a96218f112c31ded0a1139ef89a3dc36c4e1a386d0d68e8abf8fb9db0424c"
},
"downloads": -1,
"filename": "mysoccer_update-1.0.1.tar.gz",
"has_sig": false,
"md5_digest": "dd1becbbf83346a652237dc96821d435",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 28245,
"upload_time": "2025-10-22T00:25:37",
"upload_time_iso_8601": "2025-10-22T00:25:37.380969Z",
"url": "https://files.pythonhosted.org/packages/16/2b/9c911b1a24e4c00ef9273715a250a8444f2ab29d4f610e025f84b6c56ce1/mysoccer_update-1.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-10-22 00:25:37",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "ahmety",
"github_project": "mysoccer-update",
"github_not_found": true,
"lcname": "mysoccer-update"
}