Compare commits

..

No commits in common. "cdbd02f50182ecbaecc41a760787391375b7b997" and "ad40759ec2c3b28049c5c074a75ef44027bdf270" have entirely different histories.

10 changed files with 191408 additions and 184318 deletions

File diff suppressed because it is too large Load diff

371662
M3U8/TV.xml

File diff suppressed because one or more lines are too long

View file

@ -135,29 +135,29 @@ http://fl1.moveonjoy.com/ESPN_NEWS/index.m3u8
http://fl1.moveonjoy.com/ESPN_U/index.m3u8 http://fl1.moveonjoy.com/ESPN_U/index.m3u8
#EXTINF:-1 tvg-chno="45" tvg-id="ESPN2.HD.us2" tvg-name="ESPN2" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s12444_dark_360w_270h.png" group-title="TV",ESPN2 #EXTINF:-1 tvg-chno="45" tvg-id="ESPN2.HD.us2" tvg-name="ESPN2" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s12444_dark_360w_270h.png" group-title="TV",ESPN2
http://mytvstream.net:8080/live/30550113/30550113/2210.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/2210.m3u8
#EXTINF:-1 tvg-chno="46" tvg-id="FanDuel.Sports.Network.Detroit.24/7.HDTV.us" tvg-name="FDSN Detroit" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s54286_dark_360w_270h.png" group-title="TV",FDSN Detroit #EXTINF:-1 tvg-chno="46" tvg-id="FanDuel.Sports.Network.Detroit.24/7.HDTV.us" tvg-name="FDSN Detroit" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s54286_dark_360w_270h.png" group-title="TV",FDSN Detroit
http://mytvstream.net:8080/live/30550113/30550113/20930.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/20930.m3u8
#EXTINF:-1 tvg-chno="47" tvg-id="FanDuel.Sports.Network.Florida.HDTV.(Out.of.Market).us" tvg-name="FDSN Florida" tvg-logo="https://i.gyazo.com/fad701fbaaafe161b13b23ed9b50179b.png" group-title="TV",FDSN Florida #EXTINF:-1 tvg-chno="47" tvg-id="FanDuel.Sports.Network.Florida.HDTV.(Out.of.Market).us" tvg-name="FDSN Florida" tvg-logo="https://i.gyazo.com/fad701fbaaafe161b13b23ed9b50179b.png" group-title="TV",FDSN Florida
http://mytvstream.net:8080/live/30550113/30550113/46794.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/46794.m3u8
#EXTINF:-1 tvg-chno="48" tvg-id="FanDuel.Sports.Network.Midwest.24/7.HDTV.us" tvg-name="FDSN Midwest" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s11058_dark_360w_270h.png" group-title="TV",FDSN Midwest #EXTINF:-1 tvg-chno="48" tvg-id="FanDuel.Sports.Network.Midwest.24/7.HDTV.us" tvg-name="FDSN Midwest" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s11058_dark_360w_270h.png" group-title="TV",FDSN Midwest
http://mytvstream.net:8080/live/30550113/30550113/66795.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/66795.m3u8
#EXTINF:-1 tvg-chno="49" tvg-id="FanDuel.Sports.Network.North.HDTV.us" tvg-name="FDSN North" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s10977_dark_360w_270h.png" group-title="TV",FDSN North #EXTINF:-1 tvg-chno="49" tvg-id="FanDuel.Sports.Network.North.HDTV.us" tvg-name="FDSN North" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s10977_dark_360w_270h.png" group-title="TV",FDSN North
http://mytvstream.net:8080/live/30550113/30550113/58827.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/58827.m3u8
#EXTINF:-1 tvg-chno="50" tvg-id="FanDuel.Sports.Network.Ohio.(Cleveland).HDTV.us" tvg-name="FDSN Ohio" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s49691_dark_360w_270h.png" group-title="TV",FDSN Ohio #EXTINF:-1 tvg-chno="50" tvg-id="FanDuel.Sports.Network.Ohio.(Cleveland).HDTV.us" tvg-name="FDSN Ohio" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s49691_dark_360w_270h.png" group-title="TV",FDSN Ohio
#EXTVLCOPT:http-user-agent=curl/8.5.0 #EXTVLCOPT:http-user-agent=curl/8.5.0
http://lucidhosting.xyz:82/sandriassoc@gmail.com/Sm8G4ddxoW/222126 http://lucidhosting.xyz:82/sandriassoc@gmail.com/Sm8G4ddxoW/222126
#EXTINF:-1 tvg-chno="51" tvg-id="FanDuel.Sports.Network.Oklahoma.24/7.HDTV.(Tulsa).us" tvg-name="FDSN Oklahoma" tvg-logo="https://i.gyazo.com/80ad6fd142cd67f06eef58d9ce5aa72b.png" group-title="TV",FDSN Oklahoma #EXTINF:-1 tvg-chno="51" tvg-id="FanDuel.Sports.Network.Oklahoma.24/7.HDTV.(Tulsa).us" tvg-name="FDSN Oklahoma" tvg-logo="https://i.gyazo.com/80ad6fd142cd67f06eef58d9ce5aa72b.png" group-title="TV",FDSN Oklahoma
http://mytvstream.net:8080/live/30550113/30550113/20934.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/20934.m3u8
#EXTINF:-1 tvg-chno="52" tvg-id="FanDuel.Sports.Network.SoCal.HDTV.us" tvg-name="FDSN SoCal" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s16743_dark_360w_270h.png" group-title="TV",FDSN SoCal #EXTINF:-1 tvg-chno="52" tvg-id="FanDuel.Sports.Network.SoCal.HDTV.us" tvg-name="FDSN SoCal" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s16743_dark_360w_270h.png" group-title="TV",FDSN SoCal
http://mytvstream.net:8080/live/30550113/30550113/221151.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/221151.m3u8
#EXTINF:-1 tvg-chno="53" tvg-id="FanDuel.Sports.Network.Southeast.HDTV.(Mont./Birm./Dothan/Mobile.AL).us" tvg-name="FDSN Southeast" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s20789_dark_360w_270h.png" group-title="TV",FDSN Southeast #EXTINF:-1 tvg-chno="53" tvg-id="FanDuel.Sports.Network.Southeast.HDTV.(Mont./Birm./Dothan/Mobile.AL).us" tvg-name="FDSN Southeast" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s20789_dark_360w_270h.png" group-title="TV",FDSN Southeast
#EXTVLCOPT:http-user-agent=curl/8.5.0 #EXTVLCOPT:http-user-agent=curl/8.5.0
@ -172,10 +172,10 @@ http://lucidhosting.xyz:82/sandriassoc@gmail.com/Sm8G4ddxoW/220452
http://lucidhosting.xyz:82/sandriassoc@gmail.com/Sm8G4ddxoW/222132 http://lucidhosting.xyz:82/sandriassoc@gmail.com/Sm8G4ddxoW/222132
#EXTINF:-1 tvg-chno="56" tvg-id="FanDuel.Sports.Network.West.HDTV.us" tvg-name="FDSN West" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s59627_dark_360w_270h.png" group-title="TV",FDSN West #EXTINF:-1 tvg-chno="56" tvg-id="FanDuel.Sports.Network.West.HDTV.us" tvg-name="FDSN West" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s59627_dark_360w_270h.png" group-title="TV",FDSN West
http://mytvstream.net:8080/live/30550113/30550113/20932.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/20932.m3u8
#EXTINF:-1 tvg-chno="57" tvg-id="FanDuel.Sports.Network.Wisconsin.24/7.HDTV.us" tvg-name="FDSN Wisconsin" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s16348_dark_360w_270h.png" group-title="TV",FDSN Wisconsin #EXTINF:-1 tvg-chno="57" tvg-id="FanDuel.Sports.Network.Wisconsin.24/7.HDTV.us" tvg-name="FDSN Wisconsin" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s16348_dark_360w_270h.png" group-title="TV",FDSN Wisconsin
http://mytvstream.net:8080/live/30550113/30550113/78599.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/78599.m3u8
#EXTINF:-1 tvg-chno="58" tvg-id="plex.tv.FIFA+.plex" tvg-name="FIFA+ TV" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s136235_dark_360w_270h.png" group-title="TV",FIFA+ TV #EXTINF:-1 tvg-chno="58" tvg-id="plex.tv.FIFA+.plex" tvg-name="FIFA+ TV" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s136235_dark_360w_270h.png" group-title="TV",FIFA+ TV
https://jmp2.uk/stvp-IN270000230 https://jmp2.uk/stvp-IN270000230
@ -302,10 +302,10 @@ https://fl1.moveonjoy.com/FL_Tampa_NBC/index.m3u8
http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/257216 http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/257216
#EXTINF:-1 tvg-chno="99" tvg-id="NBC.Sports.Boston.HD.us2" tvg-name="NBC Sports Boston" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s49198_dark_360w_270h.png" group-title="TV",NBC Sports Boston #EXTINF:-1 tvg-chno="99" tvg-id="NBC.Sports.Boston.HD.us2" tvg-name="NBC Sports Boston" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s49198_dark_360w_270h.png" group-title="TV",NBC Sports Boston
http://mytvstream.net:8080/live/30550113/30550113/20939.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/20939.m3u8
#EXTINF:-1 tvg-chno="100" tvg-id="NBC.Sports.California.SAT.us2" tvg-name="NBC Sports California" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s45540_dark_360w_270h.png" group-title="TV",NBC Sports California #EXTINF:-1 tvg-chno="100" tvg-id="NBC.Sports.California.SAT.us2" tvg-name="NBC Sports California" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s45540_dark_360w_270h.png" group-title="TV",NBC Sports California
http://mytvstream.net:8080/live/30550113/30550113/20940.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/20940.m3u8
#EXTINF:-1 tvg-chno="101" tvg-id="a90a91570ce0536cbb22b591ad7e0da2" tvg-name="NBC Sports NOW" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s114140_dark_360w_270h.png" group-title="TV",NBC Sports NOW #EXTINF:-1 tvg-chno="101" tvg-id="a90a91570ce0536cbb22b591ad7e0da2" tvg-name="NBC Sports NOW" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s114140_dark_360w_270h.png" group-title="TV",NBC Sports NOW
https://jmp2.uk/stvp-USBD420002446 https://jmp2.uk/stvp-USBD420002446
@ -314,7 +314,7 @@ https://jmp2.uk/stvp-USBD420002446
http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/136477 http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/136477
#EXTINF:-1 tvg-chno="103" tvg-id="New.England.Sports.Network.HD.us2" tvg-name="NESN" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s35038_dark_360w_270h.png" group-title="TV",NESN #EXTINF:-1 tvg-chno="103" tvg-id="New.England.Sports.Network.HD.us2" tvg-name="NESN" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s35038_dark_360w_270h.png" group-title="TV",NESN
http://mytvstream.net:8080/live/30550113/30550113/46726.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/46726.m3u8
#EXTINF:-1 tvg-chno="104" tvg-id="NewsNation.us2" tvg-name="NewsNation" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s91096_dark_360w_270h.png" group-title="TV",NewsNation #EXTINF:-1 tvg-chno="104" tvg-id="NewsNation.us2" tvg-name="NewsNation" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s91096_dark_360w_270h.png" group-title="TV",NewsNation
http://fl1.moveonjoy.com/NEWS_NATION/index.m3u8 http://fl1.moveonjoy.com/NEWS_NATION/index.m3u8
@ -371,7 +371,7 @@ http://fl1.moveonjoy.com/SMITHSONIAN_CHANNEL/index.m3u8
http://fl1.moveonjoy.com/Sony_Movie_Channel/index.m3u8 http://fl1.moveonjoy.com/Sony_Movie_Channel/index.m3u8
#EXTINF:-1 tvg-chno="122" tvg-id="Space.City.Home.Network.HD.us2" tvg-name="Space City Home Network" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s77744_dark_360w_270h.png" group-title="TV",Space City Home Network #EXTINF:-1 tvg-chno="122" tvg-id="Space.City.Home.Network.HD.us2" tvg-name="Space City Home Network" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s77744_dark_360w_270h.png" group-title="TV",Space City Home Network
http://mytvstream.net:8080/live/30550113/30550113/213668.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/213668.m3u8
#EXTINF:-1 tvg-chno="123" tvg-id="Spectrum.SportsNet.LA.Dodgers.HD.us2" tvg-name="Spectrum SportsNet LA Dodgers" tvg-logo="https://i.gyazo.com/765cce528ddda366695bb178d9dee6da.png" group-title="TV",Spectrum SportsNet LA Dodgers #EXTINF:-1 tvg-chno="123" tvg-id="Spectrum.SportsNet.LA.Dodgers.HD.us2" tvg-name="Spectrum SportsNet LA Dodgers" tvg-logo="https://i.gyazo.com/765cce528ddda366695bb178d9dee6da.png" group-title="TV",Spectrum SportsNet LA Dodgers
http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/141497 http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/141497
@ -383,13 +383,13 @@ http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/141498
http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/21635 http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/21635
#EXTINF:-1 tvg-chno="126" tvg-id="Sportsnet.East.ca2" tvg-name="Sportsnet East" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s62109_dark_360w_270h.png" group-title="TV",Sportsnet East #EXTINF:-1 tvg-chno="126" tvg-id="Sportsnet.East.ca2" tvg-name="Sportsnet East" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s62109_dark_360w_270h.png" group-title="TV",Sportsnet East
http://mytvstream.net:8080/live/30550113/30550113/57298.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/57298.m3u8
#EXTINF:-1 tvg-chno="127" tvg-id="SNY.SportsNet.New.York.HD.us2" tvg-name="SportsNet New York" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s50038_dark_360w_270h.png" group-title="TV",SportsNet New York #EXTINF:-1 tvg-chno="127" tvg-id="SNY.SportsNet.New.York.HD.us2" tvg-name="SportsNet New York" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s50038_dark_360w_270h.png" group-title="TV",SportsNet New York
https://fl1.moveonjoy.com/SNY/index.m3u8 https://fl1.moveonjoy.com/SNY/index.m3u8
#EXTINF:-1 tvg-chno="128" tvg-id="Sportsnet.One.ca2" tvg-name="Sportsnet One" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s68859_dark_360w_270h.png" group-title="TV",Sportsnet One #EXTINF:-1 tvg-chno="128" tvg-id="Sportsnet.One.ca2" tvg-name="Sportsnet One" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s68859_dark_360w_270h.png" group-title="TV",Sportsnet One
http://mytvstream.net:8080/live/30550113/30550113/57297.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/57297.m3u8
#EXTINF:-1 tvg-chno="129" tvg-id="Sportsnet.Ontario.HD.ca2" tvg-name="Sportsnet Ontario" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s62111_dark_360w_270h.png" group-title="TV",Sportsnet Ontario #EXTINF:-1 tvg-chno="129" tvg-id="Sportsnet.Ontario.HD.ca2" tvg-name="Sportsnet Ontario" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s62111_dark_360w_270h.png" group-title="TV",Sportsnet Ontario
https://stream.decentdoubts.net/801/index.m3u8?token=cTREYWhzaWIxOWlhZ3BpcWh0MkduTVdzcGNpdXk2eURxN21hbktxa200TERxNEduaVp1UnBxU2VlWmF0ZnRlRGxaMm0wNStDbnJOOXJJM0puSytpbkE9PQ== https://stream.decentdoubts.net/801/index.m3u8?token=cTREYWhzaWIxOWlhZ3BpcWh0MkduTVdzcGNpdXk2eURxN21hbktxa200TERxNEduaVp1UnBxU2VlWmF0ZnRlRGxaMm0wNStDbnJOOXJJM0puSytpbkE9PQ==
@ -410,7 +410,7 @@ https://turnerlive.warnermediacdn.com/hls/live/2023172/tbseast/slate/VIDEO_0_356
https://fl1.moveonjoy.com/TENNIS_CHANNEL/index.m3u8 https://fl1.moveonjoy.com/TENNIS_CHANNEL/index.m3u8
#EXTINF:-1 tvg-chno="135" tvg-id="The.Weather.Channel.HD.us2" tvg-name="The Weather Channel" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s58812_dark_360w_270h.png" group-title="TV",The Weather Channel #EXTINF:-1 tvg-chno="135" tvg-id="The.Weather.Channel.HD.us2" tvg-name="The Weather Channel" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s58812_dark_360w_270h.png" group-title="TV",The Weather Channel
http://mytvstream.net:8080/live/30550113/30550113/18926.m3u8 http://mytvstream.net:8080/live/bn80NG/909467/18926.m3u8
#EXTINF:-1 tvg-chno="136" tvg-id="TLC.HD.(US).us2" tvg-name="TLC" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s11158_dark_360w_270h.png" group-title="TV",TLC #EXTINF:-1 tvg-chno="136" tvg-id="TLC.HD.(US).us2" tvg-name="TLC" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s11158_dark_360w_270h.png" group-title="TV",TLC
http://fl1.moveonjoy.com/TLC/index.m3u8 http://fl1.moveonjoy.com/TLC/index.m3u8

View file

@ -5,7 +5,7 @@ import re
from pathlib import Path from pathlib import Path
from xml.etree import ElementTree as ET from xml.etree import ElementTree as ET
from scrapers.utils import get_logger, leagues, network from scrapers.utils import get_logger, network
log = get_logger(__name__) log = get_logger(__name__)
@ -13,6 +13,8 @@ BASE_M3U8 = Path(__file__).parent / "base.m3u8"
EPG_FILE = Path(__file__).parent / "TV.xml" EPG_FILE = Path(__file__).parent / "TV.xml"
LIVE_IMG = "https://i.gyazo.com/978f2eb4a199ca5b56b447aded0cb9e3.png"
EPG_URLS = { EPG_URLS = {
"https://epgshare01.online/epgshare01/epg_ripper_CA2.xml.gz", "https://epgshare01.online/epgshare01/epg_ripper_CA2.xml.gz",
"https://epgshare01.online/epgshare01/epg_ripper_DUMMY_CHANNELS.xml.gz", "https://epgshare01.online/epgshare01/epg_ripper_DUMMY_CHANNELS.xml.gz",
@ -25,33 +27,23 @@ EPG_URLS = {
} }
DUMMIES = { DUMMIES = {
"Basketball.Dummy.us": leagues.live_img, "Basketball.Dummy.us": LIVE_IMG,
"Golf.Dummy.us": leagues.live_img, "Golf.Dummy.us": LIVE_IMG,
"Live.Event.us": leagues.live_img, "Live.Event.us": LIVE_IMG,
"MLB.Baseball.Dummy.us": None, "MLB.Baseball.Dummy.us": None,
"NBA.Basketball.Dummy.us": None, "NBA.Basketball.Dummy.us": None,
"NFL.Dummy.us": None, "NFL.Dummy.us": None,
"NHL.Hockey.Dummy.us": None, "NHL.Hockey.Dummy.us": None,
"PPV.EVENTS.Dummy.us": leagues.live_img, "PPV.EVENTS.Dummy.us": LIVE_IMG,
"Racing.Dummy.us": leagues.live_img, "Racing.Dummy.us": LIVE_IMG,
"Soccer.Dummy.us": leagues.live_img, "Soccer.Dummy.us": LIVE_IMG,
"Tennis.Dummy.us": leagues.live_img, "Tennis.Dummy.us": LIVE_IMG,
"WNBA.dummy.us": None, "WNBA.dummy.us": None,
} }
REPLACE_IDs = { REPLACE_IDs = {
"Ice Hockey": { "NCAA Sports": {"old": "Sports.Dummy.us", "new": "NCAA.Sports.Dummy.us"},
"old": "Minor.League.Hockey.Dummy.us", "UFC": {"old": "UFC.247.Dummy.us", "new": "UFC.Dummy.us"},
"new": "Ice.Hockey.Dummy.us",
},
"NCAA Sports": {
"old": "Sports.Dummy.us",
"new": "NCAA.Sports.Dummy.us",
},
"UFC": {
"old": "UFC.247.Dummy.us",
"new": "UFC.Dummy.us",
},
} }
@ -70,7 +62,7 @@ def get_tvg_ids() -> dict[str, str]:
tvg |= DUMMIES tvg |= DUMMIES
tvg |= {v["old"]: leagues.live_img for v in REPLACE_IDs.values()} tvg |= {v["old"]: LIVE_IMG for v in REPLACE_IDs.values()}
return tvg return tvg
@ -79,14 +71,14 @@ async def fetch_xml(url: str) -> ET.Element | None:
if not (xml_data := await network.request(url, log=log)): if not (xml_data := await network.request(url, log=log)):
return return
try:
log.info(f'Parsing XML from "{url}"') log.info(f'Parsing XML from "{url}"')
try:
data = gzip.decompress(xml_data.content) data = gzip.decompress(xml_data.content)
return ET.fromstring(data) return ET.fromstring(data)
except Exception as e: except Exception as e:
log.error(f'Failed to parse XML from "{url}": {e}') log.error(f'Failed to parse from "{url}": {e}')
return return
@ -184,7 +176,7 @@ async def main() -> None:
for title, ids in REPLACE_IDs.items(): for title, ids in REPLACE_IDs.items():
hijack_id(root, **ids, text=title) hijack_id(root, **ids, text=title)
if missing_ids := tvg_ids.keys() - parsed_tvg_ids: if missing_ids := set(tvg_ids) - parsed_tvg_ids:
log.warning(f"Missed {len(missing_ids)} TVG ID(s)") log.warning(f"Missed {len(missing_ids)} TVG ID(s)")
for channel_id in missing_ids: for channel_id in missing_ids:
@ -204,6 +196,10 @@ async def main() -> None:
if __name__ == "__main__": if __name__ == "__main__":
asyncio.run(main()) asyncio.run(main())
for hndlr in log.handlers:
hndlr.flush()
hndlr.stream.write("\n")
try: try:
asyncio.run(network.client.aclose()) asyncio.run(network.client.aclose())
except Exception: except Exception:

File diff suppressed because it is too large Load diff

View file

@ -69,7 +69,7 @@ async def main() -> None:
asyncio.create_task(ppv.scrape(xtrnl_brwsr)), asyncio.create_task(ppv.scrape(xtrnl_brwsr)),
asyncio.create_task(sport9.scrape(xtrnl_brwsr)), asyncio.create_task(sport9.scrape(xtrnl_brwsr)),
asyncio.create_task(streamcenter.scrape(xtrnl_brwsr)), asyncio.create_task(streamcenter.scrape(xtrnl_brwsr)),
asyncio.create_task(streamhub.scrape(xtrnl_brwsr)), # asyncio.create_task(streamhub.scrape(xtrnl_brwsr)),
asyncio.create_task(streamsgate.scrape(xtrnl_brwsr)), asyncio.create_task(streamsgate.scrape(xtrnl_brwsr)),
asyncio.create_task(totalsportek.scrape(hdl_brwsr)), asyncio.create_task(totalsportek.scrape(hdl_brwsr)),
asyncio.create_task(webcast.scrape(hdl_brwsr)), asyncio.create_task(webcast.scrape(hdl_brwsr)),
@ -82,7 +82,7 @@ async def main() -> None:
asyncio.create_task(pawa.scrape()), asyncio.create_task(pawa.scrape()),
asyncio.create_task(roxie.scrape()), asyncio.create_task(roxie.scrape()),
asyncio.create_task(shark.scrape()), asyncio.create_task(shark.scrape()),
asyncio.create_task(streambtw.scrape()), # asyncio.create_task(streambtw.scrape()),
asyncio.create_task(streamfree.scrape()), asyncio.create_task(streamfree.scrape()),
asyncio.create_task(tvpass.scrape()), asyncio.create_task(tvpass.scrape()),
asyncio.create_task(xstreameast.scrape()), asyncio.create_task(xstreameast.scrape()),

View file

@ -221,7 +221,7 @@ async def scrape(browser: Browser) -> None:
ev["sport"], ev["sport"],
ev["league"], ev["league"],
ev["event"], ev["event"],
ev["event_ts"], ev["timestamp"],
ev["link"], ev["link"],
) )

View file

@ -200,14 +200,11 @@ class Leagues:
elif self.is_valid(event, "WNBA"): elif self.is_valid(event, "WNBA"):
return self.info("WNBA") return self.info("WNBA")
else:
return self.info("Basketball") return self.info("Basketball")
case "Ice Hockey" | "Hockey": case "Ice Hockey" | "Hockey":
return ( return self.info("NHL")
self.info("NHL")
if self.is_valid(event, "NHL")
else self.info("Hockey")
)
case _: case _:
return self.info(sport) return self.info(sport)

View file

@ -28,14 +28,6 @@
} }
} }
], ],
"Ice.Hockey.Dummy.us": [
{
"HOCKEY": {
"logo": "https://images.emojiterra.com/google/noto-emoji/unicode-15/color/512px/1f3d2.png",
"names": []
}
}
],
"MLB.Baseball.Dummy.us": [ "MLB.Baseball.Dummy.us": [
{ {
"MLB": { "MLB": {
@ -112,6 +104,7 @@
"NHL": { "NHL": {
"logo": "https://a.espncdn.com/combiner/i?img=/i/teamlogos/leagues/500/nhl.png", "logo": "https://a.espncdn.com/combiner/i?img=/i/teamlogos/leagues/500/nhl.png",
"names": [ "names": [
"HOCKEY",
"NATIONAL HOCKEY LEAGUE", "NATIONAL HOCKEY LEAGUE",
"NHL HOCKEY", "NHL HOCKEY",
"NHL PLAYOFFS", "NHL PLAYOFFS",
@ -214,7 +207,7 @@
{ {
"BUNDESLIGA": { "BUNDESLIGA": {
"logo": "https://a.espncdn.com/combiner/i?img=/i/leaguelogos/soccer/500/10.png", "logo": "https://a.espncdn.com/combiner/i?img=/i/leaguelogos/soccer/500/10.png",
"names": ["BUNDESLIG", "GERMAN BUNDESLIGA", "GERMANY BUNDESLIGA"] "names": ["BUNDESLIG", "GERMAN BUNDESLIGA"]
} }
}, },
{ {
@ -324,12 +317,6 @@
"names": ["FRANCE CUP", "FRENCH CUP"] "names": ["FRANCE CUP", "FRENCH CUP"]
} }
}, },
{
"EERSTE DIVISIE": {
"logo": "https://a.espncdn.com/combiner/i?img=/i/leaguelogos/soccer/500/105.png",
"names": ["KEUKEN KAMPIOEN DIVISIE"]
}
},
{ {
"EFL": { "EFL": {
"logo": "https://i.gyazo.com/c8842fbcb2eeb6a53bc69fa6055b8b5d.png", "logo": "https://i.gyazo.com/c8842fbcb2eeb6a53bc69fa6055b8b5d.png",
@ -455,8 +442,6 @@
"LALIGA", "LALIGA",
"PRIMERA DIVISION", "PRIMERA DIVISION",
"PRIMERA DIVISIÓN", "PRIMERA DIVISIÓN",
"SPAIN LA LIGA",
"SPAIN LALIGA",
"SPANISH LA LIGA", "SPANISH LA LIGA",
"SPANISH LALIGA" "SPANISH LALIGA"
] ]
@ -471,7 +456,6 @@
"LALIGA 2", "LALIGA 2",
"SEGUNDA DIVISION", "SEGUNDA DIVISION",
"SEGUNDA DIVISIÓN", "SEGUNDA DIVISIÓN",
"SEGUNDA LIGA",
"SPAIN SEGUNDA DIVISION", "SPAIN SEGUNDA DIVISION",
"SPANISH LA LIGA 2", "SPANISH LA LIGA 2",
"SPANISH LALIGA 2", "SPANISH LALIGA 2",
@ -989,71 +973,6 @@
"Washington Commanders", "Washington Commanders",
"Washington Redskins" "Washington Redskins"
], ],
"NHL": [
"Anaheim",
"Anaheim Ducks",
"Boston",
"Boston Bruins",
"Buffalo",
"Buffalo Sabres",
"Calgary",
"Calgary Flames",
"Carolina",
"Carolina Hurricanes",
"Chicago",
"Chicago Blackhawks",
"Colorado",
"Colorado Avalanche",
"Columbus",
"Columbus Blue Jackets",
"Dallas",
"Dallas Stars",
"Detroit",
"Detroit Red Wings",
"Edmonton",
"Edmonton Oilers",
"Florida",
"Florida Panthers",
"Los Angeles",
"Los Angeles Kings",
"Minnesota",
"Minnesota Wild",
"Montreal",
"Montreal Canadiens",
"Nashville",
"Nashville Predators",
"New Jersey",
"New Jersey Devils",
"New York",
"New York Islanders",
"New York Rangers",
"Ottawa",
"Ottawa Senators",
"Philadelphia",
"Philadelphia Flyers",
"Pittsburgh",
"Pittsburgh Penguins",
"San Jose",
"San Jose Sharks",
"Seattle",
"Seattle Kraken",
"St. Louis",
"St. Louis Blues",
"Tampa Bay",
"Tampa Bay Lightning",
"Toronto",
"Toronto Maple Leafs",
"Utah",
"Utah Mammoth",
"Vancouver",
"Vancouver Canucks",
"Vegas",
"Vegas Golden Knights",
"Washington",
"Washington Capitals",
"Winnipeg",
"Winnipeg Jets"
],
"WNBA": [ "WNBA": [
"Aces", "Aces",
"Atlanta Dream", "Atlanta Dream",

View file

@ -1,15 +1,13 @@
## Base Log @ 2026-01-31 04:15 UTC ## Base Log @ 2026-01-30 04:20 UTC
### ✅ Working Streams: 140<br>❌ Dead Streams: 6 ### ✅ Working Streams: 142<br>❌ Dead Streams: 4
| Channel | Error (Code) | Link | | Channel | Error (Code) | Link |
| ------- | ------------ | ---- | | ------- | ------------ | ---- |
| FDSN Sun | HTTP Error (403) | `http://lucidhosting.xyz:82/sandriassoc@gmail.com/Sm8G4ddxoW/222132` |
| FXX | HTTP Error (404) | `https://fl1.moveonjoy.com/FXX/index.m3u8` | | FXX | HTTP Error (404) | `https://fl1.moveonjoy.com/FXX/index.m3u8` |
| NBC Sports Bay Area | HTTP Error (502) | `http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/257216` |
| Premier Sports 1 | HTTP Error (403) | `http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/117037` | | Premier Sports 1 | HTTP Error (403) | `http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/117037` |
| Premier Sports 2 | HTTP Error (502) | `http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/117038` | | Premier Sports 2 | HTTP Error (502) | `http://hardcoremedia.xyz:80/NW3Vk7xXwW/8375773282/117038` |
| Vice TV | HTTP Error (404) | `https://fl1.moveonjoy.com/VICELAND/index.m3u8` | | Sportsnet One | HTTP Error (403) | `http://mytvstream.net:8080/live/bn80NG/909467/57297.m3u8` |
--- ---
#### Base Channels URL #### Base Channels URL
``` ```