mirror of
https://github.com/doms9/iptv.git
synced 2026-06-14 12:36:27 +02:00
Compare commits
No commits in common. "ca95ba01e0a0629ef78e8c6a9114e90b60f623a8" and "befe6e3a0a4da89fdd9bdd20c41aee659ccd5a76" have entirely different histories.
ca95ba01e0
...
befe6e3a0a
10 changed files with 130412 additions and 125243 deletions
2132
M3U8/TV.m3u8
2132
M3U8/TV.m3u8
File diff suppressed because it is too large
Load diff
251286
M3U8/TV.xml
251286
M3U8/TV.xml
File diff suppressed because one or more lines are too long
|
|
@ -79,7 +79,7 @@ http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/267357.ts
|
||||||
http://23.237.104.106:8080/USA_CINEMAX/index.m3u8
|
http://23.237.104.106:8080/USA_CINEMAX/index.m3u8
|
||||||
|
|
||||||
#EXTINF:-1 tvg-chno="27" tvg-id="Cleo.TV.HD.us2" tvg-name="Cleo TV" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s110289_dark_360w_270h.png" group-title="TV",Cleo TV
|
#EXTINF:-1 tvg-chno="27" tvg-id="Cleo.TV.HD.us2" tvg-name="Cleo TV" tvg-logo="https://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s110289_dark_360w_270h.png" group-title="TV",Cleo TV
|
||||||
http://hardcoremedia.xyz/live/rabdsbmz/3731346838/129849.ts
|
http://supersonictv.live:8080/317136/Kennzack1218/86101
|
||||||
|
|
||||||
#EXTINF:-1 tvg-chno="28" tvg-id="CMT.HD.us2" tvg-name="CMT" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s10138_dark_360w_270h.png" group-title="TV",CMT
|
#EXTINF:-1 tvg-chno="28" tvg-id="CMT.HD.us2" tvg-name="CMT" tvg-logo="http://schedulesdirect-api20141201-logos.s3.dualstack.us-east-1.amazonaws.com/stationLogos/s10138_dark_360w_270h.png" group-title="TV",CMT
|
||||||
http://23.237.104.106:8080/USA_CMT/index.m3u8
|
http://23.237.104.106:8080/USA_CMT/index.m3u8
|
||||||
|
|
|
||||||
2130
M3U8/events.m3u8
2130
M3U8/events.m3u8
File diff suppressed because it is too large
Load diff
|
|
@ -72,7 +72,7 @@ async def main() -> None:
|
||||||
asyncio.create_task(fawa.scrape()),
|
asyncio.create_task(fawa.scrape()),
|
||||||
asyncio.create_task(istreameast.scrape()),
|
asyncio.create_task(istreameast.scrape()),
|
||||||
asyncio.create_task(mainportal.scrape()),
|
asyncio.create_task(mainportal.scrape()),
|
||||||
# asyncio.create_task(ovogoal.scrape()),
|
asyncio.create_task(ovogoal.scrape()),
|
||||||
asyncio.create_task(pawa.scrape()),
|
asyncio.create_task(pawa.scrape()),
|
||||||
asyncio.create_task(shark.scrape()),
|
asyncio.create_task(shark.scrape()),
|
||||||
asyncio.create_task(streamcenter.scrape()),
|
asyncio.create_task(streamcenter.scrape()),
|
||||||
|
|
|
||||||
|
|
@ -104,7 +104,9 @@ async def get_events(cached_keys: list[str]) -> list[dict[str, str]]:
|
||||||
for game in data.get("games", {}):
|
for game in data.get("games", {}):
|
||||||
game_id = game["id"]
|
game_id = game["id"]
|
||||||
|
|
||||||
event_dt = Time.fromisoformat(game["datetime"]).to_tz("EST")
|
game_time = game["datetime"]
|
||||||
|
|
||||||
|
event_dt = Time.from_str(game_time, timezone="UTC")
|
||||||
|
|
||||||
if not start_dt <= event_dt <= end_dt:
|
if not start_dt <= event_dt <= end_dt:
|
||||||
continue
|
continue
|
||||||
|
|
|
||||||
|
|
@ -54,9 +54,12 @@ async def process_event(
|
||||||
return
|
return
|
||||||
|
|
||||||
try:
|
try:
|
||||||
btn = page.locator("button.streambutton").first
|
if btn := page.locator("button.streambutton").first:
|
||||||
|
await btn.click(
|
||||||
await btn.dblclick(force=True, timeout=3_000)
|
force=True,
|
||||||
|
click_count=2,
|
||||||
|
timeout=3_000,
|
||||||
|
)
|
||||||
|
|
||||||
await page.wait_for_function(
|
await page.wait_for_function(
|
||||||
"() => typeof clapprPlayer !== 'undefined'",
|
"() => typeof clapprPlayer !== 'undefined'",
|
||||||
|
|
|
||||||
|
|
@ -81,8 +81,12 @@ class Time(datetime):
|
||||||
"%Y-%m-%d %I:%M %p",
|
"%Y-%m-%d %I:%M %p",
|
||||||
"%Y-%m-%d %H:%M %p",
|
"%Y-%m-%d %H:%M %p",
|
||||||
"%Y-%m-%dT%H:%M:%S",
|
"%Y-%m-%dT%H:%M:%S",
|
||||||
|
"%Y-%m-%dT%H:%M:%SZ",
|
||||||
|
"%Y-%m-%dT%H:%M:%S%z",
|
||||||
|
"%Y-%m-%dT%H:%M:%S.%fZ",
|
||||||
"%Y/%m/%d %H:%M",
|
"%Y/%m/%d %H:%M",
|
||||||
"%Y/%m/%d %H:%M:%S",
|
"%Y/%m/%d %H:%M:%S",
|
||||||
|
"%Y/%m/%dT%H:%M:%S.%fZ",
|
||||||
"%m/%d/%Y %H:%M",
|
"%m/%d/%Y %H:%M",
|
||||||
"%m/%d/%Y %I:%M %p",
|
"%m/%d/%Y %I:%M %p",
|
||||||
"%m/%d/%Y %H:%M:%S",
|
"%m/%d/%Y %H:%M:%S",
|
||||||
|
|
|
||||||
|
|
@ -270,6 +270,7 @@ class Network:
|
||||||
log.warning(
|
log.warning(
|
||||||
f"URL {url_num}) Status Code: {resp.status if resp else 'None'}"
|
f"URL {url_num}) Status Code: {resp.status if resp else 'None'}"
|
||||||
)
|
)
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
wait_task = asyncio.create_task(got_one.wait())
|
wait_task = asyncio.create_task(got_one.wait())
|
||||||
|
|
@ -278,6 +279,7 @@ class Network:
|
||||||
await asyncio.wait_for(wait_task, timeout=timeout)
|
await asyncio.wait_for(wait_task, timeout=timeout)
|
||||||
except asyncio.TimeoutError:
|
except asyncio.TimeoutError:
|
||||||
log.warning(f"URL {url_num}) Timed out waiting for M3U8.")
|
log.warning(f"URL {url_num}) Timed out waiting for M3U8.")
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
finally:
|
finally:
|
||||||
|
|
@ -291,10 +293,16 @@ class Network:
|
||||||
|
|
||||||
if captured:
|
if captured:
|
||||||
log.info(f"URL {url_num}) Captured M3U8")
|
log.info(f"URL {url_num}) Captured M3U8")
|
||||||
|
|
||||||
return captured[0]
|
return captured[0]
|
||||||
|
|
||||||
|
log.warning(f"URL {url_num}) No M3U8 captured after waiting.")
|
||||||
|
|
||||||
|
return
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
log.warning(f"URL {url_num}) {e}")
|
log.warning(f"URL {url_num}) {e}")
|
||||||
|
|
||||||
return
|
return
|
||||||
|
|
||||||
finally:
|
finally:
|
||||||
|
|
|
||||||
78
readme.md
78
readme.md
|
|
@ -1,15 +1,89 @@
|
||||||
## Base Log @ 2026-04-23 16:21 UTC
|
## Base Log @ 2026-04-22 15:48 UTC
|
||||||
|
|
||||||
### ✅ Working Streams: 155<br>❌ Dead Streams: 6
|
### ✅ Working Streams: 81<br>❌ Dead Streams: 80
|
||||||
|
|
||||||
| Channel | Error (Code) | Link |
|
| Channel | Error (Code) | Link |
|
||||||
| ------- | ------------ | ---- |
|
| ------- | ------------ | ---- |
|
||||||
|
| Aspire | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/150605.ts` |
|
||||||
|
| C-SPAN | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/14804.ts` |
|
||||||
|
| CBS Sports Network | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/267357.ts` |
|
||||||
|
| CNBC | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2295.ts` |
|
||||||
|
| CW | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/171820.ts` |
|
||||||
|
| Cleo TV | HTTP Error (401) | `http://supersonictv.live:8080/317136/Kennzack1218/86101` |
|
||||||
|
| Comedy TV | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/199482.ts` |
|
||||||
|
| Cozi TV | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/8392.ts` |
|
||||||
|
| Discovery Family Channel | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2300.ts` |
|
||||||
|
| Discovery Life | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/201208.ts` |
|
||||||
|
| Discovery Science | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2301.ts` |
|
||||||
|
| Disney | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2303.ts` |
|
||||||
|
| ESPN News | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2312.ts` |
|
||||||
|
| ESPN2 | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/41918.ts` |
|
||||||
|
| FDSN Detroit | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/6463.ts` |
|
||||||
|
| FDSN Florida | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/296662.ts` |
|
||||||
|
| FDSN Midwest | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/58557.ts` |
|
||||||
|
| FDSN Ohio | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/296675.ts` |
|
||||||
|
| FDSN Oklahoma | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/6452.ts` |
|
||||||
| FDSN SoCal | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/296681.ts` |
|
| FDSN SoCal | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/296681.ts` |
|
||||||
|
| FDSN South | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/277374.ts` |
|
||||||
| FDSN Southeast | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/82301.ts` |
|
| FDSN Southeast | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/82301.ts` |
|
||||||
| FDSN Southwest | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/296685.ts` |
|
| FDSN Southwest | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/296685.ts` |
|
||||||
|
| FDSN Sun | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2325.ts` |
|
||||||
| FDSN West | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/3367.ts` |
|
| FDSN West | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/3367.ts` |
|
||||||
| FDSN Wisconsin | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/295668.ts` |
|
| FDSN Wisconsin | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/295668.ts` |
|
||||||
|
| FX Movie Channel | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/39873.ts` |
|
||||||
|
| FYI TV | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/9234.ts` |
|
||||||
|
| Fox News | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/1611.ts` |
|
||||||
|
| Fox Sports 1 | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/756.ts` |
|
||||||
|
| Fox Sports 2 | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/757.ts` |
|
||||||
|
| Freeform TV | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2329.ts` |
|
||||||
|
| Game Show Network | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/466.ts` |
|
||||||
|
| Golf Channel | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/5845.ts` |
|
||||||
|
| Grit TV | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/15086.ts` |
|
||||||
|
| HBO Family | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/760.ts` |
|
||||||
|
| Hallmark Family | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/304609.ts` |
|
||||||
|
| Hallmark Mystery | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/3388.ts` |
|
||||||
|
| History Channel | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/761.ts` |
|
||||||
|
| INSP | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/30900.ts` |
|
||||||
|
| ION TV | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/147661.ts` |
|
||||||
|
| Investigation Discovery | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/8557.ts` |
|
||||||
|
| Lifetime | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/4667.ts` |
|
||||||
|
| MLB Network | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2342.ts` |
|
||||||
|
| MSNBC | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/406.ts` |
|
||||||
|
| Marquee Sports Network | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/150609.ts` |
|
||||||
|
| MotorTrend TV | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/272264.ts` |
|
||||||
|
| NBA TV | HTTP Error (404) | `http://212.102.60.231/NBA_TV/index.m3u8` |
|
||||||
| NBC Sports Bay Area | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/45785.ts` |
|
| NBC Sports Bay Area | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/45785.ts` |
|
||||||
|
| NBC Sports Boston | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/35132.ts` |
|
||||||
|
| NBC Sports California | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/16116.ts` |
|
||||||
|
| NBC Sports Philadelphia | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/35472.ts` |
|
||||||
|
| NFL RedZone | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2369.ts` |
|
||||||
|
| NHL Network | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2348.ts` |
|
||||||
|
| National Geographic | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/749.ts` |
|
||||||
|
| NewsNation | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/6296.ts` |
|
||||||
|
| Nick Jr | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/14835.ts` |
|
||||||
|
| Ovation | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/194336.ts` |
|
||||||
|
| Oxygen | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/6378.ts` |
|
||||||
|
| Pop TV | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/305494.ts` |
|
||||||
|
| Premier Sports 1 | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/1097.ts` |
|
||||||
|
| Premier Sports 2 | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/4723.ts` |
|
||||||
|
| Showtime Extreme | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/12036.ts` |
|
||||||
|
| Sky Sports News | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/304775.ts` |
|
||||||
|
| Smithsonian Channel | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/8585.ts` |
|
||||||
|
| Sony Movie Channel | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/5831.ts` |
|
||||||
|
| SportsNet New York | HTTP Error (404) | `http://212.102.60.231/SNY/index.m3u8` |
|
||||||
|
| SportsNet Pittsburgh | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/59945.ts` |
|
||||||
|
| Sportsnet 360 | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/3377.ts` |
|
||||||
|
| Sportsnet East | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/1720.ts` |
|
||||||
|
| Sportsnet One | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/3378.ts` |
|
||||||
|
| TLC | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2362.ts` |
|
||||||
|
| TSN1 | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/770.ts` |
|
||||||
|
| TSN2 | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/771.ts` |
|
||||||
|
| TV Land | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2364.ts` |
|
||||||
|
| TV One | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/13010.ts` |
|
||||||
|
| The Weather Channel | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/2361.ts` |
|
||||||
|
| USA East | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/3390.ts` |
|
||||||
|
| Willow Cricket | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/296763.ts` |
|
||||||
|
| getTV | HTTP Error (404) | `http://iptvtree.net:8080/live/7e4b0dbd/1dd755dc3f/194187.ts` |
|
||||||
---
|
---
|
||||||
#### Base Channels URL
|
#### Base Channels URL
|
||||||
```
|
```
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue