iptv/M3U8/scrapers/utils/config.py

130 lines
4.3 KiB
Python
Raw Normal View History

2025-09-04 09:59:19 -04:00
from datetime import datetime
2025-09-03 15:00:17 -04:00
import pytz
TZ = pytz.timezone("America/New_York")
2025-09-04 09:59:19 -04:00
now = datetime.now(TZ)
2025-09-11 14:55:53 -04:00
UA = (
"Mozilla/5.0 (Windows NT 10.0; Win64; x64) "
"AppleWebKit/537.36 (KHTML, like Gecko) "
"Chrome/134.0.0.0 Safari/537.36 Edg/134.0.0.0"
)
2025-09-19 02:05:40 -04:00
LEAGUES: dict[str, dict[str, str]] = {
"Basketball": {
"logo": "https://i.gyazo.com/978f2eb4a199ca5b56b447aded0cb9e3.png",
"id": "Basketball.Dummy.us",
},
"Bundesliga": {
"logo": "https://1000logos.net/wp-content/uploads/2020/09/Bundesliga-Logo-500x313.png",
"id": "Soccer.Dummy.us",
},
"F1": {
"logo": "https://1000logos.net/wp-content/uploads/2021/06/F1-logo-500x281.png",
"id": "Racing.Dummy.us",
},
"La Liga": {
"logo": "https://1000logos.net/wp-content/uploads/2019/01/Spanish-La-Liga-Logo-500x281.png",
"id": "Soccer.Dummy.us",
},
"Ligue 1": {
"logo": "https://1000logos.net/wp-content/uploads/2019/01/Ligue-1-Logo-500x281.png",
"id": "Soccer.Dummy.us",
},
"MLB": {
"logo": "https://1000logos.net/wp-content/uploads/2017/04/MLB-Logo-500x281.png",
"id": "MLB.Baseball.Dummy.us",
},
"MLS": {
"logo": "https://1000logos.net/wp-content/uploads/2017/10/MLS-logo-500x393.png",
"id": "MLS.Soccer.Dummy.us",
},
"Moto GP": {
"logo": "https://1000logos.net/wp-content/uploads/2021/03/MotoGP-Logo-500x281.png",
"id": "Racing.Dummy.us",
},
"NBA": {
"logo": "https://1000logos.net/wp-content/uploads/2025/08/Jerry-West-the-NBA-Logo-500x281.png",
"id": "NBA.Basketball.Dummy.us",
},
"NCAA": {
"logo": "https://1000logos.net/wp-content/uploads/2021/12/NCAA-Logo-500x281.png",
"id": "Sports.Dummy.us",
},
"NFL": {
"logo": "https://1000logos.net/wp-content/uploads/2017/05/NFL-logo-500x338.png",
"id": "NFL.Dummy.us",
},
"NHL": {
"logo": "https://1000logos.net/wp-content/uploads/2017/05/NHL-Logo-500x333.png",
"id": "NHL.Hockey.Dummy.us",
},
"Pay-Per-View": {
"logo": "https://i.gyazo.com/978f2eb4a199ca5b56b447aded0cb9e3.png",
"id": "PPV.EVENTS.Dummy.us",
},
"Premier League": {
"logo": "https://1000logos.net/wp-content/uploads/2017/05/Premier-League-logo-500x210.png",
"id": "Premier.League.Dummy.us",
},
"Primera A": {
"logo": "https://b.fssta.com/uploads/application/soccer/competition-logos/ColombianPrimeraA.png",
"id": "Soccer.Dummy.us",
},
"Primeira Liga": {
"logo": "https://1000logos.net/wp-content/uploads/2022/01/Portuguese-Primeira-Liga-logo-500x281.png",
"id": "Soccer.Dummy.us",
},
"Serie A": {
"logo": "https://1000logos.net/wp-content/uploads/2019/01/Italian-Serie-A-Logo-500x281.png",
"id": "Soccer.Dummy.us",
},
"Soccer": {
"logo": "https://i.gyazo.com/978f2eb4a199ca5b56b447aded0cb9e3.png",
"id": "Soccer.Dummy.us",
},
"UEFA Champions League": {
"logo": "https://1000logos.net/wp-content/uploads/2022/01/UEFA-Champions-League-logo-500x281.png",
"id": "UEFA.Champions.League.Dummy.us",
},
"UFC": {
"logo": "https://1000logos.net/wp-content/uploads/2017/06/Logo-UFC-500x313.png",
"id": "UFC.Fight.Pass.Dummy.us",
},
"WNBA": {
"logo": "https://1000logos.net/wp-content/uploads/2018/09/logo-wnba-500x287.png",
"id": "WNBA.dummy.us",
},
"default": {
"logo": "https://i.gyazo.com/978f2eb4a199ca5b56b447aded0cb9e3.png",
"id": "Live.Event.us",
},
2025-09-03 15:00:17 -04:00
}
2025-09-13 21:04:01 -04:00
2025-09-19 02:05:40 -04:00
2025-09-13 21:04:01 -04:00
alias_map = {
2025-09-19 02:05:40 -04:00
"Bundesliga": ["German Bundesliga", "Bundeslig"],
"F1": ["Formula 1", "Formula One"],
"La Liga": ["Spanish La Liga", "Laliga"],
"MLB": ["Major League Baseball", "Baseball"],
2025-09-16 20:40:48 -04:00
"MLS": ["Major League Soccer"],
2025-09-19 02:05:40 -04:00
"Moto GP": ["MotoGP"],
2025-09-16 15:55:08 -04:00
"NCAA": ["CBB", "CFB", "NCAAB", "NCAAF"],
2025-09-19 02:05:40 -04:00
"NFL": ["American Football", "USA NFL"],
2025-09-13 21:04:01 -04:00
"Premier League": ["EPL"],
2025-09-19 02:05:40 -04:00
"Primeira Liga": ["Liga Portugal"],
"Soccer": ["Football", "World Cup", "World Cup Qualifiers", "UEFA Europa League"],
2025-09-16 15:55:08 -04:00
"UEFA Champions League": ["Champions League", "UCL"],
2025-09-16 20:40:48 -04:00
"WNBA": ["NBA W"],
2025-09-13 21:04:01 -04:00
}
for base, aliases in alias_map.items():
for alias in aliases:
2025-09-19 02:05:40 -04:00
LEAGUES[alias] = LEAGUES[base]
def league_info(name: str) -> dict:
return LEAGUES.get(name, LEAGUES["default"])