Updated Scraper
This commit is contained in:
@@ -132,9 +132,9 @@ class scraper:
|
|||||||
away_club_id = safe_traverse(match, ["awayParticipantUrl"], default="non-existent-club-id")
|
away_club_id = safe_traverse(match, ["awayParticipantUrl"], default="non-existent-club-id")
|
||||||
|
|
||||||
# Sprawdź, czy mecz nie znajduje się już w bazie
|
# Sprawdź, czy mecz nie znajduje się już w bazie
|
||||||
if self.czy_mecz_istnieje(zewnetrzne_id_meczu=match_id):
|
# if self.czy_mecz_istnieje(zewnetrzne_id_meczu=match_id):
|
||||||
stop_scraping = True
|
# stop_scraping = True
|
||||||
break
|
# break
|
||||||
|
|
||||||
# Sprawdź, czy klub znajduje się już w bazie. Jeśli nie,
|
# Sprawdź, czy klub znajduje się już w bazie. Jeśli nie,
|
||||||
# trzeba go dodać przed meczem.
|
# trzeba go dodać przed meczem.
|
||||||
@@ -160,20 +160,20 @@ class scraper:
|
|||||||
|
|
||||||
iso_converted_date = self.to_iso_compatible_date(safe_traverse(match, ["eventStartTime"], default="1970-01-01"))
|
iso_converted_date = self.to_iso_compatible_date(safe_traverse(match, ["eventStartTime"], default="1970-01-01"))
|
||||||
|
|
||||||
self.db.simple_insert_one("mecze",
|
# self.db.simple_insert_one("mecze",
|
||||||
zewnetrzne_id_meczu = safe_traverse(match, ["eventEncodedId"], default=""),
|
# zewnetrzne_id_meczu = safe_traverse(match, ["eventEncodedId"], default=""),
|
||||||
data = iso_converted_date,
|
# data = iso_converted_date,
|
||||||
gospodarze_id = home_club_id,
|
# gospodarze_id = home_club_id,
|
||||||
gospodarze = self.db.simple_select_all("kluby", id_klubu=home_club_id)[0],
|
# gospodarze = self.db.simple_select_all("kluby", id_klubu=home_club_id)[0],
|
||||||
goscie_id = away_club_id,
|
# goscie_id = away_club_id,
|
||||||
goscie = self.db.simple_select_all("kluby", id_klubu=away_club_id)[0],
|
# goscie = self.db.simple_select_all("kluby", id_klubu=away_club_id)[0],
|
||||||
gosp_wynik = safe_traverse(match, ["homeScore"], default=0),
|
# gosp_wynik = safe_traverse(match, ["homeScore"], default=0),
|
||||||
gosc_wynik = safe_traverse(match, ["awayScore"], default=0),
|
# gosc_wynik = safe_traverse(match, ["awayScore"], default=0),
|
||||||
sezon = safe_traverse(match, ["tournamentSeason"], default=""),
|
# sezon = safe_traverse(match, ["tournamentSeason"], default=""),
|
||||||
nazwa_turnieju = safe_traverse(match, ["tournamentTitle"], default=""),
|
# nazwa_turnieju = safe_traverse(match, ["tournamentTitle"], default=""),
|
||||||
skrocona_nazwa_turnieju = safe_traverse(match, ["tournamentTemplateShortCode"], default=""),
|
# skrocona_nazwa_turnieju = safe_traverse(match, ["tournamentTemplateShortCode"], default=""),
|
||||||
flaga = safe_traverse(match, ["flagId"], default=0),
|
# flaga = safe_traverse(match, ["flagId"], default=0),
|
||||||
)
|
# )
|
||||||
match_num += 1
|
match_num += 1
|
||||||
|
|
||||||
stats = safe_traverse(match, ["stats"], default="")
|
stats = safe_traverse(match, ["stats"], default="")
|
||||||
@@ -181,29 +181,24 @@ class scraper:
|
|||||||
|
|
||||||
if stats != False: # gdy sportowiec był aktywny w meczu
|
if stats != False: # gdy sportowiec był aktywny w meczu
|
||||||
print("todo :)")
|
print("todo :)")
|
||||||
# # TODO:
|
# 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,
|
||||||
# zawodnik = zawodnik,
|
zawodnik = zawodnik,
|
||||||
# zewnetrzne_id_meczu = zewnetrzne_id_meczu,
|
zewnetrzne_id_meczu = zewnetrzne_id_meczu,
|
||||||
# # ODTĄD SIĘ NIE POKRYWA!!! POLA POWINNY SIĘ ZGADZAĆ Z TYM, CO JEST W LEWY_DB (konkretnie klasie sportowcy_w_meczach)
|
czas_gry = (lambda v: int(str(v).rstrip("'")) if isinstance(v, (str, int, float)) and str(v).rstrip("'").lstrip("-").isdigit() else 0)(safe_traverse(stats if isinstance(stats, dict) else {}, ["595", "value"], default="0")),
|
||||||
# ostatni_mecz = self.db.get_id_meczu_by_zewnetrzne_id(zewnetrzne_id_meczu),
|
goli = int(safe_traverse(stats, ["596", "value"], default="0")),
|
||||||
# ilosc_wystapien = 1 if int(safe_traverse(stats, ["595", "value"], default="0").rstrip("'")) > 0 else 0,
|
asyst = int(safe_traverse(stats, ["541", "value"], default="0")),
|
||||||
# minut_gry = int(safe_traverse(stats, ["595", "value"], default="0").rstrip("'")),
|
interwencje_bramkarza = 0,
|
||||||
# gier_sum = 1 if int(safe_traverse(stats, ["595", "value"], default="0").rstrip("'")) > 0 else 0,
|
suma_interwencji_na_bramke = 0,
|
||||||
# goli_sum = int(safe_traverse(stats, ["596", "value"], default="0")),
|
zolte_kartki = int(safe_traverse(stats, ["599", "value"], default="0")),
|
||||||
# asyst_sum = int(safe_traverse(stats, ["541", "value"], default="0")),
|
czerwone_kartki = int(safe_traverse(stats, ["600", "value"], default="0")),
|
||||||
# interwencji_sum = 0,
|
wygrana = {"Z": 1, "R": 0, "P": -1}.get(safe_traverse(match, ["winLoseShort"], default=""), 0),
|
||||||
# nieobronionych_interwencji_sum = 0,
|
wynik = safe_traverse(match, ["rating"], default=0) or 0
|
||||||
# zoltych_kartek_sum = int(safe_traverse(stats, ["599", "value"], default="0")),
|
)
|
||||||
# czerwonych_kartek_sum = int(safe_traverse(stats, ["600", "value"], default="0")),
|
|
||||||
# wygranych_sum = 1 if safe_traverse(match, ["winLoseShort"], default="") == "Z" else 0,
|
|
||||||
# wynik_sum = safe_traverse(match, ["rating"], default=0),
|
|
||||||
# meczow_do_wynikow_sum = 1 if safe_traverse(match, ["rating"], default=0) not in (0, None) else None
|
|
||||||
# )
|
|
||||||
|
|
||||||
# # analogicznie zinkrementuj statystyki_sportowcow:
|
# # analogicznie zinkrementuj statystyki_sportowcow:
|
||||||
# # UWAGA! NIE ZADZIAŁA DLA NIKOGO INNEGO, NIŻ ROBERCIKA (bo nie mamy innych sportowców w bazie, trzeba dodać ich ręcznie w lewy_db sample_data_init())
|
# # uwaga! nie zadziała dla nikogo innego, niż robercika (bo nie mamy innych sportowców w bazie, trzeba dodać ich ręcznie w lewy_db sample_data_init())
|
||||||
# self.db.simple_insert_one("statystyki_sportowcow",
|
# self.db.simple_insert_one("statystyki_sportowcow",
|
||||||
# sportowiec = zawodnik,
|
# sportowiec = zawodnik,
|
||||||
# ostatni_mecz = self.db.get_id_meczu_by_zewnetrzne_id(zewnetrzne_id_meczu),
|
# ostatni_mecz = self.db.get_id_meczu_by_zewnetrzne_id(zewnetrzne_id_meczu),
|
||||||
@@ -216,29 +211,28 @@ class scraper:
|
|||||||
# nieobronionych_interwencji_sum = 0,
|
# nieobronionych_interwencji_sum = 0,
|
||||||
# zoltych_kartek_sum = int(safe_traverse(stats, ["599", "value"], default="0")),
|
# zoltych_kartek_sum = int(safe_traverse(stats, ["599", "value"], default="0")),
|
||||||
# czerwonych_kartek_sum = int(safe_traverse(stats, ["600", "value"], default="0")),
|
# czerwonych_kartek_sum = int(safe_traverse(stats, ["600", "value"], default="0")),
|
||||||
# wygranych_sum = 1 if safe_traverse(match, ["winLoseShort"], default="") == "Z" else 0,
|
# wygranych_sum = 1 if safe_traverse(match, ["winloseshort"], default="") == "z" else 0,
|
||||||
# wynik_sum = safe_traverse(match, ["rating"], default=0),
|
# wynik_sum = safe_traverse(match, ["rating"], default=0),
|
||||||
# meczow_do_wynikow_sum = 1 if safe_traverse(match, ["rating"], default=0) not in (0, None) else None
|
# meczow_do_wynikow_sum = 1 if safe_traverse(match, ["rating"], default=0) not in (0, none) else none
|
||||||
# )
|
# )
|
||||||
|
|
||||||
else:
|
else:
|
||||||
print("też todo :)")
|
print("też todo :)")
|
||||||
# # TODO: TU TEŻ TRZEBA POPRAWIĆ ANALOGICZNIE DO TEGO, CO JEST WEWNĄTRZ IF'A
|
# # TODO: TU TEŻ TRZEBA POPRAWIĆ ANALOGICZNIE DO TEGO, CO JEST WEWNĄTRZ IF'A
|
||||||
# self.db.simple_insert_one("sportowcy_w_meczach", id_zawodnika,
|
self.db.simple_insert_one("sportowcy_w_meczach",
|
||||||
# ostatni_mecz = self.db.get_id_meczu_by_zewnetrzne_id(zewnetrzne_id_meczu),
|
id_zawodnika = id_zawodnika,
|
||||||
# ilosc_wystapien = 0,
|
zawodnik = zawodnik,
|
||||||
# minut_gry = 0,
|
zewnetrzne_id_meczu = zewnetrzne_id_meczu,
|
||||||
# gier_sum = 0,
|
czas_gry = (lambda v: int(str(v).rstrip("'")) if isinstance(v, (str, int, float)) and str(v).rstrip("'").lstrip("-").isdigit() else 0)(safe_traverse(stats if isinstance(stats, dict) else {}, ["595", "value"], default="0")),
|
||||||
# goli_sum = 0,
|
goli = int(safe_traverse(stats, ["596", "value"], default="0")),
|
||||||
# asyst_sum = 0,
|
asyst = int(safe_traverse(stats, ["541", "value"], default="0")),
|
||||||
# interwencji_sum = 0,
|
interwencje_bramkarza = 0,
|
||||||
# nieobronionych_interwencji_sum = 0,
|
suma_interwencji_na_bramke = 0,
|
||||||
# zoltych_kartek_sum = 0,
|
zolte_kartki = int(safe_traverse(stats, ["599", "value"], default="0")),
|
||||||
# czerwonych_kartek_sum = 0,
|
czerwone_kartki = int(safe_traverse(stats, ["600", "value"], default="0")),
|
||||||
# wygranych_sum = 1 if safe_traverse(match, ["winLoseShort"], default="") == "Z" else 0,
|
wygrana = {"Z": 1, "R": 0, "P": -1}.get(safe_traverse(match, ["winLoseShort"], default=""), 0),
|
||||||
# wynik_sum = safe_traverse(match, ["rating"], default=0),
|
wynik = safe_traverse(match, ["rating"], default=0) or 0
|
||||||
# meczow_do_wynikow_sum = 1 if safe_traverse(match, ["rating"], default=0) not in (0, None) else None
|
)
|
||||||
# )
|
|
||||||
|
|
||||||
# TODO: Zaktualizuj statystyki sportowca
|
# TODO: Zaktualizuj statystyki sportowca
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user