Compare commits

...

37 commits

Author SHA1 Message Date
GitHub Actions Bot
c3c1109e67 update M3U8 2026-04-09 11:00:52 -04:00
GitHub Actions Bot
5e422d5e8b update M3U8 2026-04-09 10:01:03 -04:00
GitHub Actions Bot
b91292e726 update M3U8 2026-04-09 09:00:53 -04:00
GitHub Actions Bot
08ab3d83eb update M3U8 2026-04-09 08:02:03 -04:00
GitHub Actions Bot
72d6049c5e update EPG 2026-04-09 11:36:34 +00:00
GitHub Actions Bot
6b54d3e829 health log 2026-04-09 09:46:39 +00:00
doms9
00000d9dec e
- edit scraping method for streamcenter.py
- misc edits.
2026-04-09 01:25:23 -04:00
GitHub Actions Bot
1af71f0610 update M3U8 2026-04-09 00:59:15 -04:00
GitHub Actions Bot
2977deb01e health log 2026-04-09 00:58:40 -04:00
GitHub Actions Bot
e76f2838ad health log 2026-04-09 04:44:44 +00:00
GitHub Actions Bot
78c52eca1e update M3U8 2026-04-08 23:30:24 -04:00
GitHub Actions Bot
458201deed update M3U8 2026-04-08 23:01:01 -04:00
GitHub Actions Bot
7c7d01157c update M3U8 2026-04-08 22:30:37 -04:00
GitHub Actions Bot
c394a804a8 update M3U8 2026-04-08 22:01:07 -04:00
GitHub Actions Bot
c9d71801a3 update M3U8 2026-04-08 21:31:25 -04:00
GitHub Actions Bot
971abf73e1 update M3U8 2026-04-08 21:01:40 -04:00
GitHub Actions Bot
43aef4beb1 update M3U8 2026-04-08 20:30:41 -04:00
GitHub Actions Bot
27e68397e0 update M3U8 2026-04-08 20:00:55 -04:00
GitHub Actions Bot
566614048a health log 2026-04-08 19:40:42 -04:00
GitHub Actions Bot
6c39403d94 update M3U8 2026-04-08 19:31:02 -04:00
GitHub Actions Bot
045a6624c2 update M3U8 2026-04-08 19:02:18 -04:00
GitHub Actions Bot
3d078fc6d0 update M3U8 2026-04-08 18:31:34 -04:00
GitHub Actions Bot
b2ffa9fecb update M3U8 2026-04-08 18:01:54 -04:00
GitHub Actions Bot
b618a68b3a update M3U8 2026-04-08 17:31:17 -04:00
GitHub Actions Bot
f5f6f56b0e health log 2026-04-08 21:07:54 +00:00
GitHub Actions Bot
c4d7c6a13e update M3U8 2026-04-08 17:00:46 -04:00
GitHub Actions Bot
e8c34063ca update M3U8 2026-04-08 16:31:12 -04:00
GitHub Actions Bot
ea53f564ee update M3U8 2026-04-08 16:01:28 -04:00
GitHub Actions Bot
0a78692289 update EPG 2026-04-08 19:49:02 +00:00
GitHub Actions Bot
5830e03004 update M3U8 2026-04-08 15:30:38 -04:00
GitHub Actions Bot
d0d2576c65 update M3U8 2026-04-08 15:00:51 -04:00
GitHub Actions Bot
68ed02a8b3 update M3U8 2026-04-08 14:31:52 -04:00
GitHub Actions Bot
bde402cf3d update M3U8 2026-04-08 14:01:48 -04:00
GitHub Actions Bot
b9074c2cf9 update M3U8 2026-04-08 13:32:38 -04:00
GitHub Actions Bot
62c30a4bf1 update M3U8 2026-04-08 13:01:40 -04:00
GitHub Actions Bot
55ac738703 update M3U8 2026-04-08 12:01:43 -04:00
GitHub Actions Bot
0ec0017d6c health log 2026-04-08 15:53:14 +00:00
9 changed files with 114847 additions and 115863 deletions

File diff suppressed because it is too large Load diff

227532
M3U8/TV.xml

File diff suppressed because one or more lines are too long

View file

@ -13,10 +13,10 @@ http://23.237.104.106:8080/USA_ACCN/mpegts
https://turnerlive.warnermediacdn.com/hls/live/2023183/aseast/noslate/VIDEO_1_5128000.m3u8
#EXTINF:-1 tvg-chno="5" tvg-id="Altitude.Sports.us2" tvg-name="Altitude Sports" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s44263_dark_360w_270h.png" group-title="TV",Altitude Sports
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/332892.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162771.ts
#EXTINF:-1 tvg-chno="6" tvg-id="AMC.HD.us2" tvg-name="AMC" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s10021_dark_360w_270h.png" group-title="TV",AMC
http://41.205.93.154/AMC/index.m3u8
http://23.239.31.26:8989/amc/index.m3u8
#EXTINF:-1 tvg-chno="7" tvg-id="Animal.Planet.HD.us2" tvg-name="Animal Planet" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s16331_dark_360w_270h.png" group-title="TV",Animal Planet
http://23.237.104.106:8080/USA_ANIMAL_PLANET/index.m3u8
@ -25,10 +25,10 @@ http://23.237.104.106:8080/USA_ANIMAL_PLANET/index.m3u8
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/647835.ts
#EXTINF:-1 tvg-chno="9" tvg-id="ASPiRE.HD.us2" tvg-name="Aspire" tvg-logo="https://i.gyazo.com/0dec42cc5ef48c489cc10db906dc5b9b.png" group-title="TV",Aspire
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/21630.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162754.ts
#EXTINF:-1 tvg-chno="10" tvg-id="AXS.TV.us2" tvg-name="AXS TV" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s28506_dark_360w_270h.png" group-title="TV",AXS TV
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/42309.ts
http://23.239.31.26:8989/axstv/index.m3u8
#EXTINF:-1 tvg-chno="11" tvg-id="BBC.America.HD.us2" tvg-name="BBC America" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s64492_dark_360w_270h.png" group-title="TV",BBC America
https://bcovlive-a.akamaihd.net/7f5ec16d102f4b5d92e8e27bc95ff424/us-east-1/6240731308001/playlist.m3u8
@ -43,7 +43,7 @@ http://212.102.60.231/BET/index.m3u8
http://23.237.104.106:8080/USA_BTN/index.m3u8
#EXTINF:-1 tvg-chno="15" tvg-id="Bloomberg.HD.us2" tvg-name="Bloomberg TV" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s71799_dark_360w_270h.png" group-title="TV",Bloomberg TV
http://23.237.104.106:8080/USA_BOOMERANG/index.m3u8
http://41.205.93.154/BLOOMBERG/index.m3u8
#EXTINF:-1 tvg-chno="16" tvg-id="Boomerang.us2" tvg-name="Boomerang" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s21883_dark_360w_270h.png" group-title="TV",Boomerang
http://23.237.104.106:8080/USA_BOOMERANG/index.m3u8
@ -58,7 +58,7 @@ http://41.205.93.154/BRAVO/index.m3u8
https://buzzrota-web.amagi.tv/playlist.m3u8
#EXTINF:-1 tvg-chno="20" tvg-id="CSPAN.us2" tvg-name="C-SPAN" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s10161_dark_360w_270h.png" group-title="TV",C-SPAN
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/92792.ts
http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/14804.ts
#EXTINF:-1 tvg-chno="21" tvg-id="Cartoon.Network.HD.us2" tvg-name="Cartoon Network" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s12131_dark_360w_270h.png" group-title="TV",Cartoon Network
http://23.237.104.106:8080/USA_CARTOON_NETWORK/index.m3u8
@ -73,7 +73,7 @@ https://cbsn-us.cbsnstream.cbsnews.com/out/v1/55a8648e8f134e82a470f83d562deeca/m
https://dai.google.com/linear/hls/event/GxrCGmwST0ixsrc_QgB6qw/master.m3u8
#EXTINF:-1 tvg-chno="25" tvg-id="CBS.Sports.Network.HD.us2" tvg-name="CBS Sports Network" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s16365_dark_360w_270h.png" group-title="TV",CBS Sports Network
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/3712.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162524.ts
#EXTINF:-1 tvg-chno="26" tvg-id="Cinemax.HD.us2" tvg-name="Cinemax" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s34933_dark_360w_270h.png" group-title="TV",Cinemax
http://23.237.104.106:8080/USA_CINEMAX/index.m3u8
@ -106,7 +106,7 @@ http://23.237.104.106:8080/USA_COOKING/index.m3u8
https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01438-ewscrippscompan-courttv-tablo/playlist.m3u8
#EXTINF:-1 tvg-chno="36" tvg-id="COZI.TV.us2" tvg-name="Cozi TV" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s78851_dark_360w_270h.png" group-title="TV",Cozi TV
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/2604.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162527.ts
#EXTINF:-1 tvg-chno="37" tvg-id="Crime.and.Investigation.Network.HD.us2" tvg-name="Crime & Investigation Network" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s61469_dark_360w_270h.png" group-title="TV",Crime & Investigation Network
http://23.237.104.106:8080/USA_CRIME_INVESTIGATION/mpegts
@ -121,7 +121,7 @@ http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/2598.ts
#EXTINF:-1 tvg-chno="41" tvg-id="Discovery.Life.Channel.us2" tvg-name="Discovery Life" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s16125_dark_360w_270h.png" group-title="TV",Discovery Life
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/2597.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162531.ts
#EXTINF:-1 tvg-chno="42" tvg-id="Science.Channel.HD.us2" tvg-name="Discovery Science" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s24282_dark_360w_270h.png" group-title="TV",Discovery Science
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/2595.ts
@ -145,7 +145,7 @@ http://hardcoremedia.xyz/live/rabdsbmz/3731346838/136160.ts
http://23.237.104.106:8080/USA_ESPNU/index.m3u8
#EXTINF:-1 tvg-chno="49" 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://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/21590.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162676.ts
#EXTINF:-1 tvg-chno="50" tvg-id="FanDuel.Sports.Network.Detroit.HD.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://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/163686.ts
@ -196,16 +196,16 @@ http://23.237.104.106:8080/USA_FOOD_NETWORK/index.m3u8
http://stream.cammonitorplus.net/1772/index.m3u8
#EXTINF:-1 tvg-chno="66" tvg-id="Fox.Business.HD.us2" tvg-name="Fox Business" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s58649_dark_360w_270h.png" group-title="TV",Fox Business
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162539.ts
http://41.205.93.154/FOXBUSINESS/index.m3u8
#EXTINF:-1 tvg-chno="67" tvg-id="Fox.News.Channel.HD.us2" tvg-name="Fox News" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s16374_dark_360w_270h.png" group-title="TV",Fox News
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/164784.ts
#EXTINF:-1 tvg-chno="68" tvg-id="FS1.Fox.Sports.1.HD.us2" tvg-name="Fox Sports 1" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s82541_dark_360w_270h.png" group-title="TV",Fox Sports 1
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/2501.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162694.ts
#EXTINF:-1 tvg-chno="69" tvg-id="FS2.Fox.Sports.2.HD.us2" tvg-name="Fox Sports 2" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s33178_dark_360w_270h.png" group-title="TV",Fox Sports 2
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/2500.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162695.ts
#EXTINF:-1 tvg-chno="70" tvg-id="Freeform.HD.us2" tvg-name="Freeform TV" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s10093_dark_360w_270h.png" group-title="TV",Freeform TV
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162693.ts
@ -286,7 +286,7 @@ http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162758.ts
http://89.105.221.127/MLBNetwork/mpegts?token=test
#EXTINF:-1 tvg-chno="96" tvg-id="MOTORTREND.HD.us2" tvg-name="MotorTrend TV" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s31046_dark_360w_270h.png" group-title="TV",MotorTrend TV
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/3747.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162559.ts
#EXTINF:-1 tvg-chno="97" tvg-id="MSG.National.us2" tvg-name="MSG" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s10979_dark_360w_270h.png" group-title="TV",MSG
http://23.237.104.106:8080/USA_MSG/index.m3u8
@ -337,7 +337,7 @@ http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/169208.ts
http://89.105.221.127/nhl/index.m3u8?token=test
#EXTINF:-1 tvg-chno="113" tvg-id="Nick.Jr.HD.us2" tvg-name="Nick Jr" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s19211_dark_360w_270h.png" group-title="TV",Nick Jr
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/74691.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162571.ts
#EXTINF:-1 tvg-chno="114" tvg-id="Nickelodeon.HD.us2" tvg-name="Nickelodeon" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s11006_dark_360w_270h.png" group-title="TV",Nickelodeon
http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8
@ -370,7 +370,7 @@ http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/89089.ts
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/89090.ts
#EXTINF:-1 tvg-chno="124" tvg-id="QVC.HD.us2" tvg-name="QVC" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s11069_dark_360w_270h.png" group-title="TV",QVC
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/36743.ts
http://212.102.60.231/QVC/index.m3u8
#EXTINF:-1 tvg-chno="125" tvg-id="ReelzChannel.HD.us2" tvg-name="Reelz Channel" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s68385_dark_360w_270h.png" group-title="TV",Reelz Channel
http://23.237.104.106:8080/USA_REELZ/index.m3u8
@ -397,10 +397,10 @@ http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162583.ts
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/663927.ts
#EXTINF:-1 tvg-chno="133" 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://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/74683.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162585.ts
#EXTINF:-1 tvg-chno="134" tvg-id="Spectrum.SportsNet.Lakers.HD.us2" tvg-name="Spectrum SportsNet Lakers" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s77422_dark_360w_270h.png" group-title="TV",Spectrum SportsNet Lakers
http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/512561.ts
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162739.ts
#EXTINF:-1 tvg-chno="135" tvg-id="Sportsman.Channel.us2" tvg-name="Sportsman Channel" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s33930_dark_360w_270h.png" group-title="TV",Sportsman Channel
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162586.ts
@ -433,7 +433,7 @@ http://23.237.104.106:8080/USA_SYFY/index.m3u8
https://turnerlive.warnermediacdn.com/hls/live/2023172/tbseast/slate/VIDEO_0_3564000.m3u8
#EXTINF:-1 tvg-chno="145" tvg-id="Tennis.Channel.HD.us2" tvg-name="Tennis Channel" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s60316_dark_360w_270h.png" group-title="TV",Tennis Channel
http://mytvstream.net:8080/live/k4Svp2/645504/20184.m3u8
https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01444-tennischannelth-tennischnlintl-lggb/playlist.m3u8
#EXTINF:-1 tvg-chno="146" 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://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162591.ts
@ -462,8 +462,8 @@ http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162596.ts
#EXTINF:-1 tvg-chno="154" tvg-id="TV.ONE.HD.us2" tvg-name="TV One" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s35513_dark_360w_270h.png" group-title="TV",TV One
http://mytvstream.net:8080/live/k4Svp2/645504/20868.m3u8
#EXTINF:-1 tvg-chno="155" tvg-id="USA.Network.HD.us2" tvg-name="USA East" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s11207_dark_360w_270h.png" group-title="TV",USA East
http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162604.ts
#EXTINF:-1 tvg-chno="155" tvg-id="USA.Network.HD.us2" tvg-name="USA East" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s11207_dark_360w_270h.png" group-title="TV",USA Network
http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/3390.ts
#EXTINF:-1 tvg-chno="156" tvg-id="VH1.HD.us2" tvg-name="VH1" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s11218_dark_360w_270h.png" group-title="TV",VH1
http://23.237.104.106:8080/USA_VH1/index.m3u8

File diff suppressed because it is too large Load diff

View file

@ -64,10 +64,9 @@ async def main() -> None:
pw_tasks = [
# asyncio.create_task(cdnlivetv.scrape(hdl_brwsr)),
asyncio.create_task(embedhd.scrape(hdl_brwsr)),
asyncio.create_task(fsports.scrape(xtrnl_brwsr)),
# asyncio.create_task(fsports.scrape(xtrnl_brwsr)),
asyncio.create_task(ppv.scrape(xtrnl_brwsr)),
asyncio.create_task(roxie.scrape(hdl_brwsr)),
asyncio.create_task(streamcenter.scrape(hdl_brwsr)),
]
httpx_tasks = [
@ -75,13 +74,14 @@ async def main() -> None:
asyncio.create_task(istreameast.scrape()),
# asyncio.create_task(listapreta.scrape()),
asyncio.create_task(mainportal.scrape()),
asyncio.create_task(ovogoal.scrape()),
# asyncio.create_task(ovogoal.scrape()),
asyncio.create_task(pawa.scrape()),
asyncio.create_task(shark.scrape()),
asyncio.create_task(streamhub.scrape()),
asyncio.create_task(streamcenter.scrape()),
# asyncio.create_task(streamhub.scrape()),
asyncio.create_task(streamsgate.scrape()),
asyncio.create_task(streamtpnew.scrape()),
asyncio.create_task(totalsportek.scrape()),
# asyncio.create_task(totalsportek.scrape()),
asyncio.create_task(tvapp.scrape()),
asyncio.create_task(webcast.scrape()),
]

View file

@ -85,7 +85,7 @@ async def get_events(cached_keys: list[str]) -> list[dict[str, str]]:
event_dt = Time.from_str(event["start"], timezone="UTC")
if now.date() != event_dt.date():
if event_dt.date() != now.date():
continue
if not (channels := event.get("channels")):

View file

@ -75,7 +75,7 @@ async def get_events(cached_keys: list[str]) -> list[dict[str, str]]:
events = []
start_dt = now.delta(hours=-1)
end_dt = now.delta(minutes=5)
end_dt = now.delta(minutes=1)
for sport in api_data:
data = api_data[sport]

View file

@ -1,6 +1,6 @@
from functools import partial
from playwright.async_api import Browser
from selectolax.parser import HTMLParser
from .utils import Cache, Time, get_logger, leagues, network
@ -10,9 +10,7 @@ urls: dict[str, dict[str, str | float]] = {}
TAG = "STRMCNTR"
CACHE_FILE = Cache(TAG, exp=10_800)
API_FILE = Cache(f"{TAG}-api", exp=19_800)
CACHE_FILE = Cache(TAG, exp=19_800)
API_URL = "https://backend.streamcenter.live/api/Parties"
@ -30,29 +28,39 @@ CATEGORIES = {
}
async def process_event(url: str, url_num: int) -> str | None:
if not (html_data := await network.request(url, log=log)):
log.warning(f"URL {url_num}) Failed to load url.")
return
soup = HTMLParser(html_data.content)
iframe = soup.css_first("iframe")
if not iframe or not (iframe_src := iframe.attributes.get("src")):
log.warning(f"URL {url_num}) No iframe element found.")
return
log.info(f"URL {url_num}) Captured M3U8")
return f"https://mainstreams.pro/hls/{iframe_src.rsplit("=", 1)[-1]}.m3u8"
async def get_events(cached_keys: list[str]) -> list[dict[str, str]]:
now = Time.clean(Time.now())
if not (api_data := API_FILE.load(per_entry=False, index=-1)):
log.info("Refreshing API cache")
events = []
api_data = [{"timestamp": now.timestamp()}]
if r := await network.request(
if not (
r := await network.request(
API_URL,
log=log,
params={"pageNumber": 1, "pageSize": 500},
):
api_data: list[dict] = r.json()
)
):
return events
api_data[-1]["timestamp"] = now.timestamp()
API_FILE.write(api_data)
events = []
start_dt = now.delta(hours=-1)
end_dt = now.delta(minutes=5)
api_data: list[dict] = r.json()
for stream_group in api_data:
category_id: int = stream_group.get("categoryId")
@ -66,30 +74,29 @@ async def get_events(cached_keys: list[str]) -> list[dict[str, str]]:
if not (name and category_id and iframe and event_time):
continue
event_dt = Time.from_str(event_time, timezone="CET")
if event_dt.date() != now.date():
continue
if not (sport := CATEGORIES.get(category_id)):
continue
if f"[{sport}] {name} ({TAG})" in cached_keys:
continue
event_dt = Time.from_str(event_time, timezone="CET")
if not start_dt <= event_dt <= end_dt:
continue
events.append(
{
"sport": sport,
"event": name,
"link": iframe.replace("<", "?", count=1),
"timestamp": event_dt.timestamp(),
"link": iframe.split("<")[0],
}
)
return events
async def scrape(browser: Browser) -> None:
async def scrape() -> None:
cached_urls = CACHE_FILE.load()
valid_urls = {k: v for k, v in cached_urls.items() if v["url"]}
@ -105,51 +112,43 @@ async def scrape(browser: Browser) -> None:
if events := await get_events(cached_urls.keys()):
log.info(f"Processing {len(events)} new URL(s)")
async with network.event_context(browser) as context:
for i, ev in enumerate(events, start=1):
async with network.event_page(context) as page:
handler = partial(
network.process_event,
url=(link := ev["link"]),
url_num=i,
page=page,
log=log,
)
now = Time.clean(Time.now())
url = await network.safe_process(
handler,
url_num=i,
semaphore=network.PW_S,
log=log,
)
for i, ev in enumerate(events, start=1):
handler = partial(
process_event,
url=(link := ev["link"]),
url_num=i,
)
sport, event, ts = (
ev["sport"],
ev["event"],
ev["timestamp"],
)
url = await network.safe_process(
handler,
url_num=i,
semaphore=network.PW_S,
log=log,
)
key = f"[{sport}] {event} ({TAG})"
sport, event = ev["sport"], ev["event"]
tvg_id, logo = leagues.get_tvg_info(sport, event)
key = f"[{sport}] {event} ({TAG})"
entry = {
"url": url,
"logo": logo,
"base": "https://streamcenter.xyz",
"timestamp": ts,
"id": tvg_id or "Live.Event.us",
"link": link,
}
tvg_id, logo = leagues.get_tvg_info(sport, event)
cached_urls[key] = entry
entry = {
"url": url,
"logo": logo,
"base": "https://streamcenter.xyz",
"timestamp": now.timestamp(),
"id": tvg_id or "Live.Event.us",
"link": link,
}
if url:
valid_count += 1
cached_urls[key] = entry
entry["url"] = url.split("?")[0]
if url:
valid_count += 1
urls[key] = entry
urls[key] = entry
log.info(f"Collected and cached {valid_count - cached_count} new event(s)")

View file

@ -1,13 +1,28 @@
## Base Log @ 2026-04-08 09:43 UTC
## Base Log @ 2026-04-09 09:46 UTC
### ✅ Working Streams: 156<br>❌ Dead Streams: 4
### ✅ Working Streams: 141<br>❌ Dead Streams: 19
| Channel | Error (Code) | Link |
| ------- | ------------ | ---- |
| C-SPAN | HTTP Error (403) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/92792.ts` |
| QVC | HTTP Timeout (408) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/36743.ts` |
| TLC | HTTP Timeout (408) | `http://89.105.221.127/tlc/mpegts?token=test` |
| USA East | HTTP Error (403) | `http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162604.ts` |
| Antenna TV | HTTP Error (401) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/647835.ts` |
| Bloomberg TV | HTTP Error (404) | `http://41.205.93.154/BLOOMBERG/index.m3u8` |
| C-SPAN | HTTP Timeout (408) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/14804.ts` |
| CW | HTTP Error (401) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/87547.ts` |
| Discovery Family Channel | HTTP Error (401) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/2598.ts` |
| Discovery Science | HTTP Error (401) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/2595.ts` |
| Fox Business | HTTP Error (404) | `http://41.205.93.154/FOXBUSINESS/index.m3u8` |
| Golf Channel | HTTP Error (401) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/2385.ts` |
| Hallmark Mystery | HTTP Error (401) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/97462.ts` |
| MotorTrend TV | HTTP Error (403) | `http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162559.ts` |
| Nick Jr | HTTP Error (403) | `http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162571.ts` |
| Premier Sports 1 | HTTP Error (401) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/89089.ts` |
| Premier Sports 2 | HTTP Error (401) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/89090.ts` |
| Smithsonian Channel | HTTP Error (403) | `http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/45866.ts` |
| Space City Home Network | HTTP Error (401) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/663927.ts` |
| Spectrum SportsNet LA Dodgers | HTTP Error (403) | `http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162585.ts` |
| Spectrum SportsNet Lakers | HTTP Error (403) | `http://tv.proyectox.vip:8080/live/eEiiLll09384Ecaiman34RtR/KTap2pdJx7/162739.ts` |
| USA East | HTTP Timeout (408) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/3390.ts` |
| Willow Cricket | HTTP Error (401) | `http://user.scalecdn.co:8080/live/69922173979534301/P0ZxXMOVz8qnPU4m/3972.ts` |
---
#### Base Channels URL
```