From 00000d9540c0cffaee2dc709e50789b30438c9b0 Mon Sep 17 00:00:00 2001 From: doms9 <96013514+doms9@users.noreply.github.com> Date: Sat, 13 Jun 2026 11:15:32 -0400 Subject: [PATCH] e - misc edits. --- M3U8/scrapers/streamsgate.py | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) diff --git a/M3U8/scrapers/streamsgate.py b/M3U8/scrapers/streamsgate.py index 8c968cbf..c03a7407 100644 --- a/M3U8/scrapers/streamsgate.py +++ b/M3U8/scrapers/streamsgate.py @@ -99,9 +99,9 @@ async def get_events() -> list[dict[str, str]]: return events for stream_group in api_data: - date = stream_group.get("time") + date: str = stream_group.get("time") - sport = stream_group.get("league") + sport: str = stream_group.get("league") t1, t2 = stream_group.get("away"), stream_group.get("home") @@ -113,13 +113,27 @@ async def get_events() -> list[dict[str, str]]: if event_dt.date() != now.date(): continue - if not (streams := stream_group.get("streams")) or not ( - url := streams[0].get("url") + if not (t1 and t2): + continue + + if not (streams := stream_group.get("streams")): + continue + + elif not ( + valid_streams := sorted( + [ + *filter( + lambda x: (lth := len(x.get("lang"))) == 0 or lth > 2, + streams, + ) + ], + key=lambda x: len(x.get("lang")), + reverse=True, + ) ): continue - if not (t1 and t2): - continue + url = valid_streams[0]["url"] event = get_event(t1, t2)