@@ -177,25 +177,7 @@ class scraper:
|
|||||||
stats = safe_traverse(match, ["stats"], default="")
|
stats = safe_traverse(match, ["stats"], default="")
|
||||||
zewnetrzne_id_meczu = safe_traverse(match, ["eventEncodedId"], default="")
|
zewnetrzne_id_meczu = safe_traverse(match, ["eventEncodedId"], default="")
|
||||||
|
|
||||||
wygrana_str = safe_traverse(match, ["winLoseShort"], default="R").upper()
|
|
||||||
klub_zawodnika = "undefined"
|
|
||||||
# Zwycięstwo klubu zawodnika
|
|
||||||
if wygrana_str == "Z":
|
|
||||||
if safe_traverse(match, ["homeScore"], default=0) > safe_traverse(match, ["awayScore"], default=0):
|
|
||||||
klub_zawodnika = home_club_id
|
|
||||||
else:
|
|
||||||
klub_zawodnika = away_club_id
|
|
||||||
# Przegrana klubu zawodnika
|
|
||||||
elif wygrana_str == "P":
|
|
||||||
if safe_traverse(match, ["homeScore"], default=0) > safe_traverse(match, ["awayScore"], default=0):
|
|
||||||
klub_zawodnika = away_club_id
|
|
||||||
else:
|
|
||||||
klub_zawodnika = home_club_id
|
|
||||||
|
|
||||||
#klub_z = getDb().simple_select_all("kluby", id_klubu=klub_zawodnika)
|
|
||||||
|
|
||||||
if stats != False: # gdy sportowiec był aktywny w meczu
|
if stats != False: # gdy sportowiec był aktywny w meczu
|
||||||
safe_traverse(stats, ["596", "value"], default=None)
|
|
||||||
# print("todo :)")
|
# print("todo :)")
|
||||||
self.db.simple_insert_one("sportowcy_w_meczach",
|
self.db.simple_insert_one("sportowcy_w_meczach",
|
||||||
id_zawodnika = id_zawodnika,
|
id_zawodnika = id_zawodnika,
|
||||||
@@ -211,8 +193,7 @@ class scraper:
|
|||||||
zolte_kartki = int("0" + safe_traverse(stats, ["599", "value"], default="0")),
|
zolte_kartki = int("0" + safe_traverse(stats, ["599", "value"], default="0")),
|
||||||
czerwone_kartki = int("0" + safe_traverse(stats, ["600", "value"], default="0")),
|
czerwone_kartki = int("0" + safe_traverse(stats, ["600", "value"], default="0")),
|
||||||
wygrana = {"Z": 1, "R": 0, "P": -1}.get(safe_traverse(match, ["winLoseShort"], default=""), 0),
|
wygrana = {"Z": 1, "R": 0, "P": -1}.get(safe_traverse(match, ["winLoseShort"], default=""), 0),
|
||||||
wynik = safe_traverse(match, ["rating"], default=0) or 0,
|
wynik = safe_traverse(match, ["rating"], default=0) or 0
|
||||||
klub_id = klub_zawodnika
|
|
||||||
)
|
)
|
||||||
|
|
||||||
# # analogicznie zinkrementuj statystyki_sportowcow:
|
# # analogicznie zinkrementuj statystyki_sportowcow:
|
||||||
@@ -255,9 +236,8 @@ class scraper:
|
|||||||
zolte_kartki = int("0" + safe_traverse(stats, ["599", "value"], default="0")),
|
zolte_kartki = int("0" + safe_traverse(stats, ["599", "value"], default="0")),
|
||||||
czerwone_kartki = int("0" + safe_traverse(stats, ["600", "value"], default="0")),
|
czerwone_kartki = int("0" + safe_traverse(stats, ["600", "value"], default="0")),
|
||||||
wygrana = {"Z": 1, "R": 0, "P": -1}.get(safe_traverse(match, ["winLoseShort"], default=""), 0),
|
wygrana = {"Z": 1, "R": 0, "P": -1}.get(safe_traverse(match, ["winLoseShort"], default=""), 0),
|
||||||
wynik = safe_traverse(match, ["rating"], default=0) or 0,
|
wynik = safe_traverse(match, ["rating"], default=0) or 0
|
||||||
klub_id = klub_zawodnika
|
)
|
||||||
)
|
|
||||||
|
|
||||||
# TODO: Zaktualizuj statystyki sportowca
|
# TODO: Zaktualizuj statystyki sportowca
|
||||||
|
|
||||||
|
|||||||
@@ -262,10 +262,6 @@ def lookup(data, request):
|
|||||||
return debugger_halt(r = request)
|
return debugger_halt(r = request)
|
||||||
case 'matches':
|
case 'matches':
|
||||||
return get_matches(r = request)
|
return get_matches(r = request)
|
||||||
case 'player_stats':
|
|
||||||
return player_stats(r = request)
|
|
||||||
case 'robert_stats':
|
|
||||||
return robert_stats(r = request)
|
|
||||||
case _:
|
case _:
|
||||||
increment_bad_requests()
|
increment_bad_requests()
|
||||||
return not_implemented(data)
|
return not_implemented(data)
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from flask_sqlalchemy import SQLAlchemy
|
from flask_sqlalchemy import SQLAlchemy
|
||||||
from functools import wraps
|
from functools import wraps
|
||||||
from sqlalchemy import ForeignKey, select, insert, update, extract, func
|
from sqlalchemy import ForeignKey, select, insert, update, extract
|
||||||
from sqlalchemy.orm import Mapped, mapped_column, DeclarativeBase, Session, relationship
|
from sqlalchemy.orm import Mapped, mapped_column, DeclarativeBase, Session, relationship
|
||||||
from typing import List
|
from typing import List
|
||||||
import time
|
import time
|
||||||
@@ -105,8 +105,6 @@ class baza():
|
|||||||
czerwone_kartki: Mapped[ int] = mapped_column()
|
czerwone_kartki: Mapped[ int] = mapped_column()
|
||||||
wygrana: Mapped[ int] = mapped_column()
|
wygrana: Mapped[ int] = mapped_column()
|
||||||
wynik: Mapped[ float] = mapped_column()
|
wynik: Mapped[ float] = mapped_column()
|
||||||
klub_id: Mapped[ int] = mapped_column(ForeignKey(f"{tnp}kluby.id_klubu"))
|
|
||||||
klub: Mapped[ "kluby"] = relationship()
|
|
||||||
|
|
||||||
def __repr__(self):
|
def __repr__(self):
|
||||||
return f"<{self.zawodnik.imie} {self.zawodnik.nazwisko} w meczu {self.mecz.gospodarze.skrocona_nazwa} vs. {self.mecz.goscie.skrocona_nazwa}>"
|
return f"<{self.zawodnik.imie} {self.zawodnik.nazwisko} w meczu {self.mecz.gospodarze.skrocona_nazwa} vs. {self.mecz.goscie.skrocona_nazwa}>"
|
||||||
@@ -203,12 +201,12 @@ class baza():
|
|||||||
with self.app.app_context():
|
with self.app.app_context():
|
||||||
self.session = Session(self.db.engine)
|
self.session = Session(self.db.engine)
|
||||||
|
|
||||||
def exit_gracefully(fun):
|
def exit_gracefully(func):
|
||||||
@wraps(fun)
|
@wraps(func)
|
||||||
def wrapper(self, *args, **kwargs):
|
def wrapper(self, *args, **kwargs):
|
||||||
return_val = None
|
return_val = None
|
||||||
try:
|
try:
|
||||||
return_val = fun(self, *args, **kwargs)
|
return_val = func(self, *args, **kwargs)
|
||||||
except:
|
except:
|
||||||
print(f"{c.FAIL}"
|
print(f"{c.FAIL}"
|
||||||
f"Wystąpił błąd podczas wykonywania zapytania SQL:"
|
f"Wystąpił błąd podczas wykonywania zapytania SQL:"
|
||||||
@@ -556,6 +554,7 @@ class baza():
|
|||||||
return query.all()
|
return query.all()
|
||||||
|
|
||||||
@exit_gracefully
|
@exit_gracefully
|
||||||
|
<<<<<<< HEAD
|
||||||
def get_basic_stats(self, id_zawodnika = None, zewnetrzne_id_zawodnika = None):
|
def get_basic_stats(self, id_zawodnika = None, zewnetrzne_id_zawodnika = None):
|
||||||
|
|
||||||
# Spróbuj otrzymać id zawodnika z zewnętrznego id.
|
# Spróbuj otrzymać id zawodnika z zewnętrznego id.
|
||||||
@@ -622,6 +621,8 @@ class baza():
|
|||||||
return query.all()[0]
|
return query.all()[0]
|
||||||
|
|
||||||
@exit_gracefully
|
@exit_gracefully
|
||||||
|
=======
|
||||||
|
>>>>>>> parent of fce1b69 (chore: prepare for rescraping)
|
||||||
def sample_data_init(self, override_safety_check=False):
|
def sample_data_init(self, override_safety_check=False):
|
||||||
"""
|
"""
|
||||||
Użycie:
|
Użycie:
|
||||||
|
|||||||
@@ -88,13 +88,14 @@ def clubs():
|
|||||||
return render_template('club.html', clubs=clubs, selected_club=selected_club)
|
return render_template('club.html', clubs=clubs, selected_club=selected_club)
|
||||||
|
|
||||||
def representation():
|
def representation():
|
||||||
|
polska = robert_stats(id_klubu="polska")[2][0]
|
||||||
nation_stats = {
|
nation_stats = {
|
||||||
'goals': 85,
|
'goals': polska["goals"],
|
||||||
'assists': 35,
|
'assists': polska["assists"],
|
||||||
'matches': 158,
|
'matches': polska["unique_items"],
|
||||||
'minutes_played': 12108,
|
'minutes_played': polska["time_played"],
|
||||||
'yellow_card':10,
|
'yellow_card':polska["yellow_cards"],
|
||||||
'red_card': 0,
|
'red_card': polska["red_cards"],
|
||||||
'wins':75,
|
'wins':75,
|
||||||
'draws': 35,
|
'draws': 35,
|
||||||
'lost': 48
|
'lost': 48
|
||||||
|
|||||||
Reference in New Issue
Block a user