From 00000d92ff3309d66a0919f155e272112a257410 Mon Sep 17 00:00:00 2001 From: doms9 <96013514+doms9@users.noreply.github.com> Date: Thu, 12 Feb 2026 17:29:49 -0500 Subject: [PATCH] e --- M3U8/scrapers/fawa.py | 52 ++++++++++++++++++++---------------- M3U8/scrapers/istreameast.py | 50 +++++++++++++++++++--------------- M3U8/scrapers/pawa.py | 50 +++++++++++++++++++--------------- 3 files changed, 85 insertions(+), 67 deletions(-) diff --git a/M3U8/scrapers/fawa.py b/M3U8/scrapers/fawa.py index 1ddf2ab8..74497f48 100644 --- a/M3U8/scrapers/fawa.py +++ b/M3U8/scrapers/fawa.py @@ -89,9 +89,11 @@ async def scrape() -> None: cached_hrefs = {entry["href"] for entry in cached_urls.values()} - cached_count = len(cached_urls) + valid_urls = {k: v for k, v in cached_urls.items() if v["url"]} - urls.update(cached_urls) + valid_count = cached_count = len(valid_urls) + + urls.update(valid_urls) log.info(f"Loaded {cached_count} event(s) from cache") @@ -118,30 +120,34 @@ async def scrape() -> None: log=log, ) + sport, event, link = ( + ev["sport"], + ev["event"], + ev["link"], + ) + + key = f"[{sport}] {event} ({TAG})" + + tvg_id, logo = leagues.get_tvg_info(sport, event) + + entry = { + "url": url, + "logo": logo, + "base": BASE_URL, + "timestamp": now.timestamp(), + "id": tvg_id or "Live.Event.us", + "href": ev["href"], + "link": link, + } + + cached_urls[key] = entry + if url: - sport, event, link = ( - ev["sport"], - ev["event"], - ev["link"], - ) + valid_count += 1 - key = f"[{sport}] {event} ({TAG})" + urls[key] = entry - tvg_id, logo = leagues.get_tvg_info(sport, event) - - entry = { - "url": url, - "logo": logo, - "base": BASE_URL, - "timestamp": now.timestamp(), - "id": tvg_id or "Live.Event.us", - "href": ev["href"], - "link": link, - } - - urls[key] = cached_urls[key] = entry - - if new_count := len(cached_urls) - cached_count: + if new_count := valid_count - cached_count: log.info(f"Collected and cached {new_count} new event(s)") else: diff --git a/M3U8/scrapers/istreameast.py b/M3U8/scrapers/istreameast.py index fdbd565c..b3cfcaa7 100644 --- a/M3U8/scrapers/istreameast.py +++ b/M3U8/scrapers/istreameast.py @@ -106,9 +106,11 @@ async def get_events(cached_keys: list[str]) -> list[dict[str, str]]: async def scrape() -> None: cached_urls = CACHE_FILE.load() - cached_count = len(cached_urls) + valid_urls = {k: v for k, v in cached_urls.items() if v["url"]} - urls.update(cached_urls) + valid_count = cached_count = len(valid_urls) + + urls.update(valid_urls) log.info(f"Loaded {cached_count} event(s) from cache") @@ -135,29 +137,33 @@ async def scrape() -> None: log=log, ) + sport, event, link = ( + ev["sport"], + ev["event"], + ev["link"], + ) + + key = f"[{sport}] {event} ({TAG})" + + tvg_id, logo = leagues.get_tvg_info(sport, event) + + entry = { + "url": url, + "logo": logo, + "base": "https://gooz.aapmains.net", + "timestamp": now.timestamp(), + "id": tvg_id or "Live.Event.us", + "link": link, + } + + cached_urls[key] = entry + if url: - sport, event, link = ( - ev["sport"], - ev["event"], - ev["link"], - ) + valid_count += 1 - key = f"[{sport}] {event} ({TAG})" + urls[key] = entry - tvg_id, logo = leagues.get_tvg_info(sport, event) - - entry = { - "url": url, - "logo": logo, - "base": "https://gooz.aapmains.net", - "timestamp": now.timestamp(), - "id": tvg_id or "Live.Event.us", - "link": link, - } - - urls[key] = cached_urls[key] = entry - - if new_count := len(cached_urls) - cached_count: + if new_count := valid_count - cached_count: log.info(f"Collected and cached {new_count} new event(s)") else: diff --git a/M3U8/scrapers/pawa.py b/M3U8/scrapers/pawa.py index 49a1be20..8c2bad21 100644 --- a/M3U8/scrapers/pawa.py +++ b/M3U8/scrapers/pawa.py @@ -89,9 +89,11 @@ async def get_events(cached_keys: list[str]) -> list[dict[str, str]]: async def scrape() -> None: cached_urls = CACHE_FILE.load() - cached_count = len(cached_urls) + valid_urls = {k: v for k, v in cached_urls.items() if v["url"]} - urls.update(cached_urls) + valid_count = cached_count = len(valid_urls) + + urls.update(valid_urls) log.info(f"Loaded {cached_count} event(s) from cache") @@ -118,29 +120,33 @@ async def scrape() -> None: log=log, ) + sport, event, link = ( + ev["sport"], + ev["event"], + ev["link"], + ) + + key = f"[{sport}] {event} ({TAG})" + + tvg_id, logo = leagues.get_tvg_info(sport, event) + + entry = { + "url": url, + "logo": logo, + "base": link, + "timestamp": now.timestamp(), + "id": tvg_id or "Live.Event.us", + "link": link, + } + + cached_urls[key] = entry + if url: - sport, event, link = ( - ev["sport"], - ev["event"], - ev["link"], - ) + valid_count += 1 - key = f"[{sport}] {event} ({TAG})" + urls[key] = entry - tvg_id, logo = leagues.get_tvg_info(sport, event) - - entry = { - "url": url, - "logo": logo, - "base": link, - "timestamp": now.timestamp(), - "id": tvg_id or "Live.Event.us", - "link": link, - } - - urls[key] = cached_urls[key] = entry - - if new_count := len(cached_urls) - cached_count: + if new_count := valid_count - cached_count: log.info(f"Collected and cached {new_count} new event(s)") else: