mirror of
https://github.com/iptv-org/epg.git
synced 2025-05-11 01:20:08 -04:00
Merge branch 'iptv-org:master' into orangetv.orange.es
This commit is contained in:
commit
0cda076648
39 changed files with 24711 additions and 2115 deletions
4
SITES.md
4
SITES.md
|
@ -71,7 +71,7 @@
|
|||
| [maxtvgo.mk](sites/maxtvgo.mk) | 🟢 | |
|
||||
| [mediagenie.co.kr](sites/mediagenie.co.kr) | 🟢 | |
|
||||
| [mediaklikk.hu](sites/mediaklikk.hu) | 🟢 | |
|
||||
| [mediaset.it](sites/mediaset.it) | 🟢 | |
|
||||
| [mediasetinfinity.mediaset.it](sites/mediasetinfinity.mediaset.it) | 🟢 | |
|
||||
| [melita.com](sites/melita.com) | 🟢 | |
|
||||
| [meo.pt](sites/meo.pt) | 🟡 | https://github.com/iptv-org/epg/issues/2446 |
|
||||
| [meuguia.tv](sites/meuguia.tv) | 🟢 | |
|
||||
|
@ -80,7 +80,7 @@
|
|||
| [mncvision.id](sites/mncvision.id) | 🟢 | |
|
||||
| [moji.id](sites/moji.id) | 🔴 | https://github.com/iptv-org/epg/issues/2392 |
|
||||
| [mon-programme-tv.be](sites/mon-programme-tv.be) | 🟢 | |
|
||||
| [movistarplus.es](sites/movistarplus.es) | 🟢 | |
|
||||
| [movistarplus.es](sites/movistarplus.es) | 🔴 | https://github.com/iptv-org/epg/issues/2498 |
|
||||
| [mtel.ba](sites/mtel.ba) | 🟢 | |
|
||||
| [mts.rs](sites/mts.rs) | 🟢 | |
|
||||
| [mujtvprogram.cz](sites/mujtvprogram.cz) | 🟢 | |
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
},
|
||||
"private": true,
|
||||
"author": "Arhey",
|
||||
"license": "MIT",
|
||||
"license": "UNLICENSED",
|
||||
"jest": {
|
||||
"transform": {
|
||||
"^.+\\.(ts|js)$": "ts-jest"
|
||||
|
@ -61,7 +61,7 @@
|
|||
"inquirer": "^8.2.6",
|
||||
"jest": "^29.7.0",
|
||||
"langs": "^2.0.0",
|
||||
"libxmljs2": "^0.33.0",
|
||||
"libxmljs2": "^0.35.0",
|
||||
"lodash": "^4.17.21",
|
||||
"luxon": "^3.3.0",
|
||||
"markdown-include": "^0.4.3",
|
||||
|
|
File diff suppressed because it is too large
Load diff
814
sites/mytelly.co.uk/__data__/programme.html
Normal file
814
sites/mytelly.co.uk/__data__/programme.html
Normal file
|
@ -0,0 +1,814 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>Captain Phillips - TV Listings | My Telly</title>
|
||||
<meta name="RIGHTS" content="/notices/">
|
||||
<meta name="TITLE" CONTENT="Captain Phillips - TV Listings | My Telly">
|
||||
<meta name="DESCRIPTION"
|
||||
Content="Check out UK TV for all local TV listings and TV services, including free, Sky and Virgin. You can browse through the UK TV Guide and search for your favourite show or topic of interest.">
|
||||
<meta name="KEYWORDS" Content="UK, TV, television, listings, guide, free, sky, virgin, movies, sport">
|
||||
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
|
||||
<meta name="LANGUAGE" content="English">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta property="og:title" content="Captain Phillips - TV Listings | My Telly" />
|
||||
<meta property="og:description"
|
||||
content="Check out UK TV for all local TV listings and TV services, including free, Sky and Virgin. You can browse through the UK TV Guide and search for your favourite show or topic of interest." />
|
||||
<meta property="og:site_name" content="My Telly" />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:image"
|
||||
content="https://d16ia5iwuvax6y.cloudfront.net/uk-prog-images/c44ce7b0d3ae602c0c93ece5af140815.jpg?k=VeeNdUjml3bSHdlZ0OXbGLy%2BmsLdYPwTV6iAxGkzq4dsylOCGGE7OWlqwSWt0cd0Qtrin4DkEMC0Zzdp8ZeNk2vNIQzjMF0DG0h3IeTR5NM%3D" />
|
||||
<meta property="og:image:height" content="302" />
|
||||
<meta property="og:image:width" content="606" />
|
||||
<script src="https://kit.fontawesome.com/98e065a542.js" crossorigin="anonymous"></script>
|
||||
<link rel="shortcut icon" href="https://d1wvpqjf5ymz68.cloudfront.net/pic/ontvtonight.ico?v=920241207"
|
||||
type="image/x-icon" />
|
||||
<script type="text/javascript"
|
||||
src="https://cdnjs.cloudflare.com/ajax/libs/jquery-tools/1.2.7/jquery.tools.min.js"></script>
|
||||
<script type="text/javascript" src="https://d1wvpqjf5ymz68.cloudfront.net/grid-ad13/cookie.js?v=920241207"></script>
|
||||
<script type="text/javascript" src="https://d1wvpqjf5ymz68.cloudfront.net/grid-ad13/table.js?v=920241207"></script>
|
||||
<script type="text/javascript">
|
||||
var baseUrl = "https://www.mytelly.co.uk/";
|
||||
</script>
|
||||
<script type="text/javascript" src="https://d1wvpqjf5ymz68.cloudfront.net/js/main.js?v=920241207"></script>
|
||||
<style type="text/css">
|
||||
@import url("https://d1wvpqjf5ymz68.cloudfront.net/css/guide.css?v=920241207");
|
||||
@import url("https://d1wvpqjf5ymz68.cloudfront.net/css/bootstrap/bootstrap.css?v=920241207");
|
||||
</style>
|
||||
|
||||
<script data-cfasync="false">
|
||||
window.ramp = window.ramp || {};
|
||||
window.ramp.que = window.ramp.que || [];
|
||||
</script>
|
||||
<script data-cfasync="false" async src="//cdn.intergient.com/1024963/74864/ramp_config.js"></script>
|
||||
|
||||
<!-- Google tag (gtag.js) -->
|
||||
<script async src="https://www.googletagmanager.com/gtag/js?id=G-5YFXQELX9H"></script>
|
||||
<script>
|
||||
window.dataLayer = window.dataLayer || [];
|
||||
|
||||
function gtag() {
|
||||
dataLayer.push(arguments);
|
||||
}
|
||||
gtag('js', new Date());
|
||||
|
||||
gtag('config', 'G-5YFXQELX9H');
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body bgcolor="#ffffff" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0">
|
||||
<div class="container p-0 desktop-container">
|
||||
<!-- start header navbar -->
|
||||
<header class="site-header">
|
||||
<div class="py-3">
|
||||
<div class="d-flex flex-wrap align-items-center justify-content-center justify-content-between">
|
||||
<div class="logo-container text-start col-5 col-md-3">
|
||||
<a href="https://www.mytelly.co.uk/">
|
||||
<img src="https://d1wvpqjf5ymz68.cloudfront.net/img/my_telly_23.png?v=920241207" alt="My Telly"
|
||||
class="w-100" />
|
||||
</a>
|
||||
</div>
|
||||
<div class="d-none d-lg-flex col-10 col-lg-auto my-2 justify-content-center my-md-0 text-small fs-7">
|
||||
<ul class="nav">
|
||||
<li>
|
||||
<a id="#uktvlistings" href="/tv-guide/" class="nav-link text-black fw-bold">TV LISTINGS</a>
|
||||
</li>
|
||||
<li>
|
||||
<a id="#streamingguide" href="/tv-guide/streaming/" class="nav-link text-black fw-bold">STREAMING</a>
|
||||
</li>
|
||||
<li>
|
||||
<a id="#tvapps" href="/apps/" class="nav-link text-black fw-bold">TV APPS</a>
|
||||
</li>
|
||||
<li>
|
||||
<a id="#about" href="/about/" class="nav-link text-black fw-bold">ABOUT US</a>
|
||||
</li>
|
||||
<li>
|
||||
<a id="#contact" href="/contact" class="nav-link text-black fw-bold">CONTACT US</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<a href="https://www.mytelly.co.uk/user/provider/" rel="nofollow" type="button" class="bts">Join / Sign in</a>
|
||||
|
||||
<div class="d-block d-lg-none">
|
||||
<nav class="navbar">
|
||||
<div class="container-fluid">
|
||||
<button class="navbar-toggler navbar-dark" type="button" data-bs-toggle="offcanvas"
|
||||
data-bs-target="#offcanvasNavbar" aria-controls="offcanvasNavbar">
|
||||
<img class="cfa-icon navbar-toggler-icon"
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/pic/ott-icons/menu-icon.png?v=920241207" />
|
||||
</button>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="d-block d-lg-none offcanvas offcanvas-end" tabindex="-1" id="offcanvasNavbar"
|
||||
aria-labelledby="offcanvasNavbarLabel">
|
||||
<div class="offcanvas-header">
|
||||
<a href="https://www.mytelly.co.uk/tv-guide/">
|
||||
<img src="https://d1wvpqjf5ymz68.cloudfront.net/img/my_telly_23.png?v=920241207" alt="My Telly"
|
||||
class="w-100" />
|
||||
</a>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body">
|
||||
<ul class="navbar-nav justify-content-end flex-grow-1 pe-3 mt-3">
|
||||
|
||||
<li class="nav-item mb-2">
|
||||
<a id="#uktvlistings" href="/tv-guide/">TV LISTINGS</a>
|
||||
</li>
|
||||
<li class="nav-item mb-2">
|
||||
<a id="#streamingguide" href="/tv-guide/streaming/">STREAMING</a>
|
||||
</li>
|
||||
<li class="nav-item mb-2">
|
||||
<a id="#tvapps" href="/apps/">TV APPS</a>
|
||||
</li>
|
||||
<li class="nav-item mb-2">
|
||||
<a id="#about" href="/about/">ABOUT</a>
|
||||
</li>
|
||||
<li class="nav-item mb-2">
|
||||
<a id="#contact" href="/contact">CONTACT</a>
|
||||
</li>
|
||||
<li class="nav-item mb-2">
|
||||
<a href="https://www.mytelly.co.uk/user/provider/" rel="nofollow">JOIN / SIGN IN</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</header>
|
||||
<!-- end header-->
|
||||
<meta name="csrf-token" content="vXwI3bXwmp5uoYKv657O0SARb5eI9PmPt4dIB6OM" />
|
||||
<div class="body-container">
|
||||
<div id="wrapper">
|
||||
<section id="inner-headline">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col col-12 col-lg-8">
|
||||
<div class="tab-holder shortcode-tabs">
|
||||
<div class="tab-hold tabs-wrapper">
|
||||
<div class="tab-content">
|
||||
<div id="tab1" class="tab-pane">
|
||||
<div class="inner-heading sub">
|
||||
<center>
|
||||
<h2>
|
||||
Captain Phillips
|
||||
</h2>
|
||||
</center>
|
||||
</div>
|
||||
<hr class="otthr">
|
||||
<center>
|
||||
<a href="https://www.mytelly.co.uk/tv-guide/listings/channel/713/bbc-one-london.html">
|
||||
<img title="BBC One London"
|
||||
src="https://d16ia5iwuvax6y.cloudfront.net/uk-images/3649f12592c6d6b53a11d719b852c515.png?k=VeeNdUjml3bSHdlZ0OXbGLy%2BmsLdYPwTV6iAxGkzq4emUQrYqeRmbVliYZSJNOzFdRlEK5H1CyiBCnca%2FsEo7HLc1dYGORulE8i9weVP18miU9XB0KJHDMGThlLNIYV1XciM%2FJqTNoqt9x5bsrcZhw%3D%3D"
|
||||
width="120" height="auto" vspace="5" hspace="5" alt="No Logo" class="chlogo" />
|
||||
</a>
|
||||
|
||||
<h5><b>12:00 am - 02:05 am</b>,
|
||||
Today
|
||||
on <a href="https://www.mytelly.co.uk/tv-guide/listings/channel/713/bbc-one-london.html">BBC
|
||||
One London</a> (1)
|
||||
</h5>
|
||||
</center>
|
||||
<hr class="otthr">
|
||||
|
||||
|
||||
|
||||
<!--START RATINGS-->
|
||||
<div class="ratings-container">
|
||||
<center>
|
||||
<p>
|
||||
<input type="hidden" name="slug" value="1906433" />
|
||||
<input type="hidden" name="region" value="uk" />
|
||||
<input type="hidden" name="type" value="listing" />
|
||||
<input type="hidden" name="slugify_title" value="captain-phillips" />
|
||||
<input type="hidden" name="slugify_type" value="movie" />
|
||||
<fieldset class="score">
|
||||
<center>
|
||||
<input type="radio" id="score-10" name="score" value="10" />
|
||||
<label class="rating-title" title="10 stars" for="score-10">10 stars</label>
|
||||
|
||||
<input type="radio" id="score-9" name="score" value="9" />
|
||||
<label class="rating-title" title="9 stars" for="score-9">9 stars</label>
|
||||
|
||||
<input type="radio" id="score-8" name="score" value="8" />
|
||||
<label class="rating-title" title="8 stars" for="score-8">8 stars</label>
|
||||
|
||||
<input type="radio" id="score-7" name="score" value="7" />
|
||||
<label class="rating-title" title="7 stars" for="score-7">7 stars</label>
|
||||
|
||||
<input type="radio" id="score-6" name="score" value="6" />
|
||||
<label class="rating-title" title="6 stars" for="score-6">6 stars</label>
|
||||
|
||||
<input type="radio" id="score-5" name="score" value="5" />
|
||||
<label class="rating-title" title="5 stars" for="score-5">5 stars</label>
|
||||
|
||||
<input type="radio" id="score-4" name="score" value="4" />
|
||||
<label class="rating-title" title="4 stars" for="score-4">4 stars</label>
|
||||
|
||||
<input type="radio" id="score-3" name="score" value="3" />
|
||||
<label class="rating-title" title="3 stars" for="score-3">3 stars</label>
|
||||
|
||||
<input type="radio" id="score-2" name="score" value="2" />
|
||||
<label class="rating-title" title="2 stars" for="score-2">2 stars</label>
|
||||
|
||||
<input type="radio" id="score-1" name="score" value="1" />
|
||||
<label class="rating-title" title="1 stars" for="score-1">1 stars</label>
|
||||
</center>
|
||||
</fieldset>
|
||||
Average User Rating: <span class="rating-avg">4.50</span> (2 votes)<br>
|
||||
My Rating: <a id="ratings-login" href="https://www.mytelly.co.uk/user/login">Sign in</a> or
|
||||
<a href="https://www.mytelly.co.uk/user/provider/">Register</a> to view last vote
|
||||
</p>
|
||||
</center>
|
||||
</div>
|
||||
<!--END RATINGS-->
|
||||
<a href="https://www.mytelly.co.uk/user/provider" class="remindme" target="_blank"><img
|
||||
class="cfa-icon cfa-search"
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/pic/ott-icons/add-to-faves.png?v=920241207" />
|
||||
Add to Favorites</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
<div class="tab-holder shortcode-tabs">
|
||||
<div class="tab-hold tabs-wrapper">
|
||||
<div class="tab-content">
|
||||
<div id="tab1" class="tab-pane">
|
||||
<center>
|
||||
<h3 class="thin">About this Broadcast</h3><img
|
||||
src="https://d2po7v53a8yrck.cloudfront.net/pic/ott-tv-strip.png" alt="-" width="300"
|
||||
height="11" border="0" hspace="0" vspace="0">
|
||||
</center>
|
||||
<div class="program-media-image">
|
||||
<img class="w-100" vspace="18" hspace="0"
|
||||
src="https://d16ia5iwuvax6y.cloudfront.net/uk-prog-images/c44ce7b0d3ae602c0c93ece5af140815.jpg?k=VeeNdUjml3bSHdlZ0OXbGLy%2BmsLdYPwTV6iAxGkzq4dsylOCGGE7OWlqwSWt0cd0Qtrin4DkEMC0Zzdp8ZeNk2vNIQzjMF0DG0h3IeTR5NM%3D" />
|
||||
</div>
|
||||
<div class="tvbody">
|
||||
<p>An American cargo ship sets a dangerous course around the coast of Somalia, while inland,
|
||||
four men are pressed into service as pirates by the local warlords. The captain is taken
|
||||
hostage when the raiding party hijacks the vessel, resulting in a tense five-day crisis.
|
||||
Fact-based thriller, starring Tom Hanks and Barkhad Abdi</p>
|
||||
</div>
|
||||
<div class="schedule-attributes">
|
||||
<span>2013</span>
|
||||
<span>HD</span>
|
||||
<span>subtitles</span>
|
||||
<span>16x9</span>
|
||||
</div>
|
||||
<div class="schedule-attributes-genres">
|
||||
<span>Factual</span>
|
||||
<span>Movie/Drama</span>
|
||||
<span>Thriller</span>
|
||||
</div>
|
||||
<hr class="otthr">
|
||||
<p>
|
||||
<center>
|
||||
<h3 class="thin">
|
||||
Cast & Crew
|
||||
</h3><img src="https://d2po7v53a8yrck.cloudfront.net/pic/ott-tv-strip.png" alt="-"
|
||||
width="300" height="11" border="0" hspace="0" vspace="0">
|
||||
</center><br>
|
||||
<div class="tvbody">
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12058" class="anchor-cast-trivia">
|
||||
<strong>Tom Hanks</strong>
|
||||
</a>
|
||||
(Actor)
|
||||
.. Capt Richard Phillips
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12059" class="anchor-cast-trivia">
|
||||
<strong>Barkhad Abdi</strong>
|
||||
</a>
|
||||
(Actor)
|
||||
.. Muse
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12060" class="anchor-cast-trivia">
|
||||
<strong>Catherine Keener</strong>
|
||||
</a>
|
||||
(Actor)
|
||||
.. Andrea Phillips
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12061" class="anchor-cast-trivia">
|
||||
<strong>Barkhad Abdirahman</strong>
|
||||
</a>
|
||||
(Actor)
|
||||
.. Bilal
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12062" class="anchor-cast-trivia">
|
||||
<strong>Faysal Ahmed</strong>
|
||||
</a>
|
||||
(Actor)
|
||||
.. Najee
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12063" class="anchor-cast-trivia">
|
||||
<strong>Mahat M Ali</strong>
|
||||
</a>
|
||||
(Actor)
|
||||
.. Elmi
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12064" class="anchor-cast-trivia">
|
||||
<strong>Michael Chernus</strong>
|
||||
</a>
|
||||
(Actor)
|
||||
.. Shane Murphy
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12065" class="anchor-cast-trivia">
|
||||
<strong>David Warshofsky</strong>
|
||||
</a>
|
||||
(Actor)
|
||||
.. Mike Perry
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12066" class="anchor-cast-trivia">
|
||||
<strong>Paul Greengrass</strong>
|
||||
</a>
|
||||
(Director)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<hr class="otthr">
|
||||
<p>
|
||||
<center>
|
||||
<h3 class="thin">More Information</h3><img
|
||||
src="https://d2po7v53a8yrck.cloudfront.net/pic/ott-tv-strip.png" alt="-" width="300"
|
||||
height="11" border="0" hspace="0" vspace="0">
|
||||
<br><br>
|
||||
<a style="padding-top:5px" href='https://imdb.com/find?s=all&q=Captain+Phillips'
|
||||
class="btn btn-warning e_pulse" target="_blank">
|
||||
<center><img src="https://d1wvpqjf5ymz68.cloudfront.net/img/IMDB.png?v=920241207"
|
||||
width="65" height="auto" vspace="0" hspace="0" alt="No Logo"></center>
|
||||
</a>
|
||||
<a style="padding-top:10px;padding-bottom:11px;"
|
||||
href='https://www.rottentomatoes.com/search/?search=Captain Phillips'
|
||||
class="btn btn-theme e_pulse" target="_blank">
|
||||
<center><img src="https://d1wvpqjf5ymz68.cloudfront.net/img/rtlogo.png?v=920241207"
|
||||
width="65" height="auto" vspace="0" hspace="0" alt="No Logo"></center>
|
||||
</a>
|
||||
</center>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--start Upcoming Times-->
|
||||
|
||||
<!--start Upcoming Times-->
|
||||
|
||||
<!--end Upcoming Times-->
|
||||
|
||||
<br />
|
||||
<div class="tab-holder shortcode-tabs">
|
||||
<div class="tab-hold tabs-wrapper">
|
||||
<div class="tab-content">
|
||||
<div id="tab1" class="tab-pane">
|
||||
|
||||
<center>
|
||||
<h3 class="thin">
|
||||
Did You Know..
|
||||
</h3><img src="https://d2po7v53a8yrck.cloudfront.net/pic/ott-tv-strip.png" alt="-" width="300"
|
||||
height="11" border="0" hspace="0" vspace="0"><br><br>
|
||||
</center>
|
||||
<div class="tvbody">
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12058">
|
||||
<strong>Tom Hanks</strong>
|
||||
(Actor)
|
||||
.. Capt Richard Phillips
|
||||
</div>
|
||||
<div class="single-cast-body">
|
||||
<div class="single-cast-others cast-block-dob">
|
||||
<span>
|
||||
Born:
|
||||
</span>
|
||||
July 09, 1956
|
||||
<span>in</span>
|
||||
California
|
||||
</div>
|
||||
<div class="single-cast-others cast-block-best-known-for">
|
||||
<span>
|
||||
Best Known For:
|
||||
</span>
|
||||
Winning Oscars for Forrest Gump and Philadelphia
|
||||
</div>
|
||||
<div class="single-cast-others cast-block-early-life">
|
||||
<span>
|
||||
Early-life:
|
||||
</span>
|
||||
Born in California in 1956, Tom Hanks grew up in what he calls a "fractured"
|
||||
family. His parents were pioneers in the development of marriage dissolution law in that
|
||||
state, and Tom moved around a lot, living with a succession of step-families. Eager for
|
||||
a career in acting, he auditioned for a community theater play, was invited by the
|
||||
director of that play to go to Cleveland, and there his acting career started.
|
||||
</div>
|
||||
<div class="single-cast-others cast-block-career">
|
||||
<span>
|
||||
Career:
|
||||
</span>
|
||||
After several TV roles, Hanks made the transition to movies and became one of the
|
||||
biggest stars of the past three decades. His breakthrough came in 1984's Splash,
|
||||
and was followed by hit after hit, including Bachelor Party and Dragnet. When he took
|
||||
the lead in Oscar-nominated Big in 1988, he transformed a simple comedy into something
|
||||
much more powerful, before truly proving his acting credentials with an Oscar-winning
|
||||
turn as an Aids-afflicted laweyer in Philadeplhia. He gave terrific turns in romantic
|
||||
comedies like Sleepless in Seattle, then another Oscar followed for Forrest Gump. Many
|
||||
expected him to garner a third for Saving Private Ryan. He has been a successful
|
||||
director of several projects and helped bring iconic TV projects like Band of Brothers
|
||||
to the screen. Recent hits include The Da Vinci Code and its follow-up, and the Toy
|
||||
Story films.
|
||||
</div>
|
||||
<div class="single-cast-others cast-block-quote">
|
||||
<span>
|
||||
Quote:
|
||||
</span>
|
||||
"My wife keeps on telling me my worst fault is that I keep things to myself and
|
||||
appear relaxed. But I am really in a room in my own head and not hearing a thing anyone
|
||||
is saying."
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12059">
|
||||
<strong>Barkhad Abdi</strong>
|
||||
(Actor)
|
||||
.. Muse
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12060">
|
||||
<strong>Catherine Keener</strong>
|
||||
(Actor)
|
||||
.. Andrea Phillips
|
||||
</div>
|
||||
<div class="single-cast-body">
|
||||
<div class="single-cast-others cast-block-dob">
|
||||
<span>
|
||||
Born:
|
||||
</span>
|
||||
March 23, 1959
|
||||
<span>in</span>
|
||||
Miami, Florida
|
||||
</div>
|
||||
<div class="single-cast-others cast-block-best-known-for">
|
||||
<span>
|
||||
Best Known For:
|
||||
</span>
|
||||
Playing Maxine Lund in Being John Malkovich.
|
||||
</div>
|
||||
<div class="single-cast-others cast-block-early-life">
|
||||
<span>
|
||||
Early-life:
|
||||
</span>
|
||||
Catherine Ann Keener was born in Miami, Florida on March 23, 1959. She has four
|
||||
siblings, including actress Elizabeth Keener. Catherine studied at Wheaton College in
|
||||
Massachusetts, where she graduated with a degree in English and history in 1983. While
|
||||
studying here, she joined a theatre course and appeared in her first theatrical
|
||||
production during her junior year.
|
||||
</div>
|
||||
<div class="single-cast-others cast-block-career">
|
||||
<span>
|
||||
Career:
|
||||
</span>
|
||||
Keener's first film appearance was a one-worded role as a waitress in About Last
|
||||
Night… (1986). She then went on to appear in Survival Quest (1988). After struggling in
|
||||
the industry for a number of years, she landed a part in Johnny Suede (1991) and began
|
||||
getting roles in independent films. Her mainstream breakthrough was in Being John
|
||||
Malkovich (1999). Since then, she has appeared in many more films, including Capote
|
||||
(2005), Into The Wild (2007), Captain Phillips (2013) and Get Out (2017).
|
||||
</div>
|
||||
<div class="single-cast-others cast-block-quote">
|
||||
<span>
|
||||
Quote:
|
||||
</span>
|
||||
"Luck favours the prepared."
|
||||
</div>
|
||||
<div class="single-cast-others cast-block-trivia">
|
||||
<span>
|
||||
Trivia:
|
||||
</span>
|
||||
She was Oscar-nominated for Best Supporting Actress in 2000 for her performance in Being
|
||||
John Malkovich and in 2006 for her performance in Capote.
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12061">
|
||||
<strong>Barkhad Abdirahman</strong>
|
||||
(Actor)
|
||||
.. Bilal
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12062">
|
||||
<strong>Faysal Ahmed</strong>
|
||||
(Actor)
|
||||
.. Najee
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12063">
|
||||
<strong>Mahat M Ali</strong>
|
||||
(Actor)
|
||||
.. Elmi
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12064">
|
||||
<strong>Michael Chernus</strong>
|
||||
(Actor)
|
||||
.. Shane Murphy
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12065">
|
||||
<strong>David Warshofsky</strong>
|
||||
(Actor)
|
||||
.. Mike Perry
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12066">
|
||||
<strong>Paul Greengrass</strong>
|
||||
(Director)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<!--start Before After -->
|
||||
<div class="tab-holder shortcode-tabs">
|
||||
<div class="tab-hold tabs-wrapper">
|
||||
<div class="tab-content">
|
||||
<div id="tab1" class="tab-pane">
|
||||
<center>
|
||||
<h3 class="thin">Before / After</h3><img
|
||||
src="https://d2po7v53a8yrck.cloudfront.net/pic/ott-tv-strip.png" alt="-" width="300"
|
||||
height="11" border="0" hspace="0" vspace="0">
|
||||
</center><br>
|
||||
<table width="100%" cellpadding="0" cellspacing="0" border="0">
|
||||
<tr>
|
||||
<td width="50%" align="left" valign="top">
|
||||
<table cellpadding="5">
|
||||
<tr>
|
||||
<td valign="top"><a
|
||||
href="https://www.mytelly.co.uk/tv-guide/listings/programme?cid=713&pid=5650851&tm=2024-12-06+23%3A30%3A00"
|
||||
class="btn btn-small btn-default btn-rounded e_pulse" rel="nofollow">
|
||||
<img class="cfa-icon"
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/pic/ott-icons/show-previous.png?v=920241207" />
|
||||
</a></td>
|
||||
<td valign="top">
|
||||
<div class="tvbody"><b><a
|
||||
href='https://www.mytelly.co.uk/tv-guide/listings/programme?cid=713&pid=5650851&tm=2024-12-06+23%3A30%3A00'
|
||||
rel="nofollow">Smoggie Queens</a></b><br>11:30 pm</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td width="50%" align="right" valign="top">
|
||||
<table cellpadding="5">
|
||||
<tr>
|
||||
<td align="right" valign="top">
|
||||
<div class="tvbody"><b><a
|
||||
href='https://www.mytelly.co.uk/tv-guide/listings/programme?cid=713&pid=5652689&tm=2024-12-07+02%3A05%3A00'
|
||||
rel="nofollow">Weather for the Week Ahead</a></b><br>02:05 am</div>
|
||||
</td>
|
||||
<td valign="top"><a
|
||||
href="https://www.mytelly.co.uk/tv-guide/listings/programme?cid=713&pid=5652689&tm=2024-12-07+02%3A05%3A00"
|
||||
class="btn btn-small btn-default btn-rounded e_pulse" rel="nofollow">
|
||||
<img class="cfa-icon"
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/pic/ott-icons/show-next.png?v=920241207" />
|
||||
</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--end Before After -->
|
||||
|
||||
</div>
|
||||
<!-- Start sidebar-->
|
||||
<div class="col col-12 col-lg-4 user-sidebar">
|
||||
<aside class="right-sidebar">
|
||||
<!--start side bar nav-->
|
||||
<div class="widget">
|
||||
<p><a href="https://www.mytelly.co.uk/user/provider/" target="_blank"><img
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/img/free-television-guide-23.png?v=920241207"
|
||||
border="0" alt="Start customising your television guide!" width="300"></a></p>
|
||||
<p><a class="btn btn-listings e_pulse fw-bold fs-7 w-100 text-white"
|
||||
href="https://www.mytelly.co.uk/user/provider/" target="_blank">New? Join for free</a></p>
|
||||
<p><a class="btn btn-listings e_pulse fw-bold fs-7 w-100 text-white"
|
||||
href="https://www.mytelly.co.uk/user/login/" target="_blank">A member? Sign in</a></p><br>
|
||||
</div> <!--end side bar nav-->
|
||||
<hr class="otthr">
|
||||
<div class="widget-title">
|
||||
<h5 class="widgetheading">Before / After</h5>
|
||||
</div>
|
||||
<h5 class="thin">
|
||||
11:30 pm
|
||||
: <a
|
||||
href='https://www.mytelly.co.uk/tv-guide/listings/programme?cid=713&pid=5650851&tm=2024-12-06+23%3A30%3A00'
|
||||
rel="nofollow">Smoggie Queens</a>
|
||||
<p>
|
||||
<p> 02:05 am
|
||||
: <a
|
||||
href='https://www.mytelly.co.uk/tv-guide/listings/programme?cid=713&pid=5652689&tm=2024-12-07+02%3A05%3A00'
|
||||
rel="nofollow">Weather for the Week Ahead</a>
|
||||
<br>
|
||||
</h5>
|
||||
</p>
|
||||
<hr class="otthr">
|
||||
</aside>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- End Content-->
|
||||
<!-- Modal -->
|
||||
<div id="wrongCountryModal" class="modal hide fade" tabindex="-1" role="dialog"
|
||||
aria-labelledby="wrongCountryModalLabel" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true"><EFBFBD></button>
|
||||
<h3 id="wrongCountryModalLabel">Error</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>You can not favourite a USA TV guide show, please go to settings to switch your country. </p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start Footer-->
|
||||
<footer class="main-footer">
|
||||
<div class="container">
|
||||
<div class="row bottom2">
|
||||
<div class="span3">
|
||||
<div class="widget about">
|
||||
<h5 class="widgetheading">About My Telly</h5>
|
||||
<div class="sidebar-line"><span></span></div>
|
||||
<ul class="link-list">
|
||||
<li>My Telly is your guide to what's on TV and streaming across the UK. My Telly covers every TV programme
|
||||
and movie broadcasting and streaming near you.</li>
|
||||
</ul>
|
||||
<br>
|
||||
<a href="https://www.ontvtonight.com/advertise/"
|
||||
class="btn btn-listings e_pulse fw-bold fs-7 w-100 text-white"
|
||||
style="max-width: 200px; text-align: center;">Advertise with us</a>
|
||||
<br>
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
<div class="span3">
|
||||
<div class="widget">
|
||||
<h5 class="widgetheading">TV Listings</h5>
|
||||
<div class="sidebar-line"><span></span></div>
|
||||
<ul class="link-list">
|
||||
<li><a href="https://www.mytelly.co.uk/">My Telly</a></li>
|
||||
<li><a href="https://www.mytelly.co.uk/tv-guide/">UK TV Guide</a></li>
|
||||
<li><a href="https://www.ontvtonight.com/">On TV Tonight</a></li>
|
||||
<li><a href="https://www.ontvtonight.com/guide/">American TV Listings Guide</a></li>
|
||||
<li><a href="https://www.ontvtonight.com/au/guide/">Australian TV Guide</a></li>
|
||||
<li><a href="https://www.ontvtonight.com/ca/guide/">Canadian TV Guide</a></li>
|
||||
<li><a href="https://www.tvireland.ie/">Irish TV Guide</a></li>
|
||||
<li><a href="https://www.tvcesoir.fr/">TV Ce Soir</a></li>
|
||||
<li><a href="https://www.guida.tv/">Guida TV</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
<div class="span3">
|
||||
<div class="widget">
|
||||
<h5 class="widgetheading">UK TV Guide Apps</h5>
|
||||
<div class="sidebar-line"><span></span></div>
|
||||
<p><a href="https://itunes.apple.com/gb/app/tv-guide-uk/id1415766150?mt=8"><img
|
||||
src="https://www.mytelly.co.uk/pic/iphone-tv-listings-guide.png?v=920230804"
|
||||
alt="TV Listings Guide App UK iPhone App" width="150" height="44" border="0" hspace="0"
|
||||
vspace="5"></a><br><a
|
||||
href="https://play.google.com/store/apps/details?id=uk.co.ontvtonight.mobile"><img
|
||||
src="https://www.mytelly.co.uk/pic/google-play-tv-listings-guide.png?v=920230804"
|
||||
alt="TV Listings Guide UK Android App" width="150" height="44" border="0" hspace="0"
|
||||
vspace="5"></a><br><a href="https://www.amazon.co.uk/dp/B07G99LN87"><img
|
||||
src="https://www.mytelly.co.uk/pic/amazon-tv-listings-guide.png?v=920230804"
|
||||
alt="TV Listings Guide Amazon App" width="150" height="44" border="0" hspace="0" vspace="5"></a></p>
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
<div class="span3">
|
||||
<div class="widget">
|
||||
<h5 class="widgetheading">My Telly</h5>
|
||||
<div class="sidebar-line"><span></span></div>
|
||||
<ul class="link-list">
|
||||
<li><a href="/tv-guide/tvbycity.html">TV listings by City</a></li>
|
||||
<li><a href="/tv-guide/tvproviders.html">TV service providers</a></li>
|
||||
<li><a href="/apps/">TV App for iPhone, iPad & Android</a></li>
|
||||
<li><a href="/about">About Us</a></li>
|
||||
<li><a href="/contact">Contact Us</a></li>
|
||||
<br>
|
||||
</ul>
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start Sub-Footer-->
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div>
|
||||
<div class="sub-footer-sq"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="sub-footer">
|
||||
<div class="container">
|
||||
<div class="row bottom3">
|
||||
<div class="span7">
|
||||
<div class="copyright">
|
||||
<p><span class="first">© 2024 My Telly | <a href="https://www.mytelly.co.uk/notices/">Legal
|
||||
Notices</a> | <a href="https://www.mytelly.co.uk/privacy/">Privacy Policy</a></span></p>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<a href="/" class="logof"><img
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/pic/ontvtonight-footer.png?v=920241207" alt="My Telly"
|
||||
class="logo" /></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- End Sub-Footer-->
|
||||
</footer>
|
||||
<!-- End Footer-->
|
||||
<!-- javascript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script data-cfasync="false" async src="//cdn.intergient.com/ramp_core.js"></script>
|
||||
<script type="text/javascript"
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/js/bootstrap/bootstrap.bundle.min.js?v=920241207"></script>
|
||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.easing.1.3.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/bootstrap/bootstrap.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.fancybox.pack.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.fancybox-media.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/google-code-prettify/prettify.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.flexslider.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.nivo.slider.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/modernizr.custom.79639.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.ba-cond.min.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/animate.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/waypoints.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/waypoints-sticky.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jQuery.appear.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/custom.js?v=920241207"></script>
|
||||
<script type="text/javascript" src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.flexisel.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.cookie.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/colorpicker/js/colorpicker.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/optionspanel.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/Sortable.min.js?v=920241207"></script>
|
||||
<!-- <script type='text/javascript' src='https://d1wvpqjf5ymz68.cloudfront.net/feedbackform.js?v=920241207'></script> -->
|
||||
</body>
|
||||
|
||||
</html>
|
796
sites/mytelly.co.uk/__data__/programme2.html
Normal file
796
sites/mytelly.co.uk/__data__/programme2.html
Normal file
|
@ -0,0 +1,796 @@
|
|||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
|
||||
<head>
|
||||
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
||||
<title>The Rap Game UK - TV Listings | My Telly</title>
|
||||
<meta name="RIGHTS" content="/notices/">
|
||||
<meta name="TITLE" CONTENT="The Rap Game UK - TV Listings | My Telly">
|
||||
<meta name="DESCRIPTION"
|
||||
Content="Check out UK TV for all local TV listings and TV services, including free, Sky and Virgin. You can browse through the UK TV Guide and search for your favourite show or topic of interest.">
|
||||
<meta name="KEYWORDS" Content="UK, TV, television, listings, guide, free, sky, virgin, movies, sport">
|
||||
<META NAME="ROBOTS" CONTENT="NOINDEX, NOFOLLOW">
|
||||
<meta name="LANGUAGE" content="English">
|
||||
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
||||
<meta property="og:title" content="The Rap Game UK - TV Listings | My Telly" />
|
||||
<meta property="og:description"
|
||||
content="Check out UK TV for all local TV listings and TV services, including free, Sky and Virgin. You can browse through the UK TV Guide and search for your favourite show or topic of interest." />
|
||||
<meta property="og:site_name" content="My Telly" />
|
||||
<meta property="og:type" content="website" />
|
||||
<meta property="og:image"
|
||||
content="https://d16ia5iwuvax6y.cloudfront.net/uk-prog-images/2039278182b27cc279570b9ab9b89379.jpg?k=VeeNdUjml3bSHdlZ0OXbGLy%2BmsLdYPwTV6iAxGkzq4cDhR7jXTNFW3tgwQCdOPUobhXwlT81mIsqOe93HPusDG6tw1aoeYOgafojtynNWxc%3D" />
|
||||
<meta property="og:image:height" content="302" />
|
||||
<meta property="og:image:width" content="606" />
|
||||
<script src="https://kit.fontawesome.com/98e065a542.js" crossorigin="anonymous"></script>
|
||||
<link rel="shortcut icon" href="https://d1wvpqjf5ymz68.cloudfront.net/pic/ontvtonight.ico?v=920241207"
|
||||
type="image/x-icon" />
|
||||
<script type="text/javascript"
|
||||
src="https://cdnjs.cloudflare.com/ajax/libs/jquery-tools/1.2.7/jquery.tools.min.js"></script>
|
||||
<script type="text/javascript" src="https://d1wvpqjf5ymz68.cloudfront.net/grid-ad13/cookie.js?v=920241207"></script>
|
||||
<script type="text/javascript" src="https://d1wvpqjf5ymz68.cloudfront.net/grid-ad13/table.js?v=920241207"></script>
|
||||
<script type="text/javascript">
|
||||
var baseUrl = "https://www.mytelly.co.uk/";
|
||||
</script>
|
||||
<script type="text/javascript" src="https://d1wvpqjf5ymz68.cloudfront.net/js/main.js?v=920241207"></script>
|
||||
<style type="text/css">
|
||||
@import url("https://d1wvpqjf5ymz68.cloudfront.net/css/guide.css?v=920241207");
|
||||
@import url("https://d1wvpqjf5ymz68.cloudfront.net/css/bootstrap/bootstrap.css?v=920241207");
|
||||
</style>
|
||||
|
||||
<script data-cfasync="false">
|
||||
window.ramp = window.ramp || {};
|
||||
window.ramp.que = window.ramp.que || [];
|
||||
</script>
|
||||
<script data-cfasync="false" async src="//cdn.intergient.com/1024963/74864/ramp_config.js"></script>
|
||||
|
||||
<!-- Google tag (gtag.js) -->
|
||||
<script async src="https://www.googletagmanager.com/gtag/js?id=G-5YFXQELX9H"></script>
|
||||
<script>
|
||||
window.dataLayer = window.dataLayer || [];
|
||||
|
||||
function gtag() {
|
||||
dataLayer.push(arguments);
|
||||
}
|
||||
gtag('js', new Date());
|
||||
|
||||
gtag('config', 'G-5YFXQELX9H');
|
||||
</script>
|
||||
</head>
|
||||
|
||||
<body bgcolor="#ffffff" topmargin="0" leftmargin="0" rightmargin="0" bottommargin="0">
|
||||
<div class="container p-0 desktop-container">
|
||||
<!-- start header navbar -->
|
||||
<header class="site-header">
|
||||
<div class="py-3">
|
||||
<div class="d-flex flex-wrap align-items-center justify-content-center justify-content-between">
|
||||
<div class="logo-container text-start col-5 col-md-3">
|
||||
<a href="https://www.mytelly.co.uk/">
|
||||
<img src="https://d1wvpqjf5ymz68.cloudfront.net/img/my_telly_23.png?v=920241207"
|
||||
alt="My Telly" class="w-100" />
|
||||
</a>
|
||||
</div>
|
||||
<div
|
||||
class="d-none d-lg-flex col-10 col-lg-auto my-2 justify-content-center my-md-0 text-small fs-7">
|
||||
<ul class="nav">
|
||||
<li>
|
||||
<a id="#uktvlistings" href="/tv-guide/" class="nav-link text-black fw-bold">TV
|
||||
LISTINGS</a>
|
||||
</li>
|
||||
<li>
|
||||
<a id="#streamingguide" href="/tv-guide/streaming/"
|
||||
class="nav-link text-black fw-bold">STREAMING</a>
|
||||
</li>
|
||||
<li>
|
||||
<a id="#tvapps" href="/apps/" class="nav-link text-black fw-bold">TV APPS</a>
|
||||
</li>
|
||||
<li>
|
||||
<a id="#about" href="/about/" class="nav-link text-black fw-bold">ABOUT US</a>
|
||||
</li>
|
||||
<li>
|
||||
<a id="#contact" href="/contact" class="nav-link text-black fw-bold">CONTACT US</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
<a href="https://www.mytelly.co.uk/user/provider/" rel="nofollow" type="button" class="bts">Join /
|
||||
Sign in</a>
|
||||
|
||||
<div class="d-block d-lg-none">
|
||||
<nav class="navbar">
|
||||
<div class="container-fluid">
|
||||
<button class="navbar-toggler navbar-dark" type="button" data-bs-toggle="offcanvas"
|
||||
data-bs-target="#offcanvasNavbar" aria-controls="offcanvasNavbar">
|
||||
<img class="cfa-icon navbar-toggler-icon"
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/pic/ott-icons/menu-icon.png?v=920241207" />
|
||||
</button>
|
||||
</div>
|
||||
</nav>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="d-block d-lg-none offcanvas offcanvas-end" tabindex="-1" id="offcanvasNavbar"
|
||||
aria-labelledby="offcanvasNavbarLabel">
|
||||
<div class="offcanvas-header">
|
||||
<a href="https://www.mytelly.co.uk/tv-guide/">
|
||||
<img src="https://d1wvpqjf5ymz68.cloudfront.net/img/my_telly_23.png?v=920241207" alt="My Telly"
|
||||
class="w-100" />
|
||||
</a>
|
||||
<button type="button" class="btn-close" data-bs-dismiss="offcanvas" aria-label="Close"></button>
|
||||
</div>
|
||||
<div class="offcanvas-body">
|
||||
<ul class="navbar-nav justify-content-end flex-grow-1 pe-3 mt-3">
|
||||
|
||||
<li class="nav-item mb-2">
|
||||
<a id="#uktvlistings" href="/tv-guide/">TV LISTINGS</a>
|
||||
</li>
|
||||
<li class="nav-item mb-2">
|
||||
<a id="#streamingguide" href="/tv-guide/streaming/">STREAMING</a>
|
||||
</li>
|
||||
<li class="nav-item mb-2">
|
||||
<a id="#tvapps" href="/apps/">TV APPS</a>
|
||||
</li>
|
||||
<li class="nav-item mb-2">
|
||||
<a id="#about" href="/about/">ABOUT</a>
|
||||
</li>
|
||||
<li class="nav-item mb-2">
|
||||
<a id="#contact" href="/contact">CONTACT</a>
|
||||
</li>
|
||||
<li class="nav-item mb-2">
|
||||
<a href="https://www.mytelly.co.uk/user/provider/" rel="nofollow">JOIN / SIGN IN</a>
|
||||
</li>
|
||||
</ul>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
</header>
|
||||
<!-- end header-->
|
||||
<meta name="csrf-token" content="vXwI3bXwmp5uoYKv657O0SARb5eI9PmPt4dIB6OM" />
|
||||
<div class="body-container">
|
||||
<div id="wrapper">
|
||||
<section id="inner-headline">
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div class="col col-12 col-lg-8">
|
||||
<div class="tab-holder shortcode-tabs">
|
||||
<div class="tab-hold tabs-wrapper">
|
||||
<div class="tab-content">
|
||||
<div id="tab1" class="tab-pane">
|
||||
<div class="inner-heading sub">
|
||||
<center>
|
||||
<h2>
|
||||
The Rap Game UK
|
||||
</h2>
|
||||
</center>
|
||||
</div>
|
||||
<hr class="otthr">
|
||||
<center>
|
||||
<a
|
||||
href="https://www.mytelly.co.uk/tv-guide/listings/channel/1663/bbc-one-channel-islands.html">
|
||||
<img title="BBC One Channel Islands"
|
||||
src="https://d16ia5iwuvax6y.cloudfront.net/uk-images/049cca41c77ad8773098df01fdea51a6.png?k=VeeNdUjml3bSHdlZ0OXbGLy%2BmsLdYPwTV6iAxGkzq4cCYyr4f%2FBrQXhWdGuTXyhfKC1GX0C6UGgEelZecV7d8Ff%2FsHS4jb1RD%2FmaKQQzI2NKOnNN1VcNbT8uJ3QtSLa3e%2FULUAGF21%2FghQnM2N3Dtw%3D%3D"
|
||||
width="120" height="auto" vspace="5" hspace="5"
|
||||
alt="No Logo" class="chlogo" />
|
||||
</a>
|
||||
|
||||
<h5><b>11:35 pm - 12:40 am</b>,
|
||||
Today
|
||||
on <a
|
||||
href="https://www.mytelly.co.uk/tv-guide/listings/channel/1663/bbc-one-channel-islands.html">BBC
|
||||
One Channel Islands</a> (1)
|
||||
</h5>
|
||||
</center>
|
||||
<hr class="otthr">
|
||||
|
||||
|
||||
|
||||
<!--START RATINGS-->
|
||||
<div class="ratings-container">
|
||||
<center>
|
||||
<p>
|
||||
<input type="hidden" name="slug" value="5656624" />
|
||||
<input type="hidden" name="region" value="uk" />
|
||||
<input type="hidden" name="type" value="listing" />
|
||||
<input type="hidden" name="slugify_title"
|
||||
value="the-rap-game-uk" />
|
||||
<input type="hidden" name="slugify_type" value="show" />
|
||||
<fieldset class="score">
|
||||
<center>
|
||||
<input type="radio" id="score-10" name="score"
|
||||
value="10" />
|
||||
<label class="rating-title" title="10 stars"
|
||||
for="score-10">10 stars</label>
|
||||
|
||||
<input type="radio" id="score-9" name="score"
|
||||
value="9" />
|
||||
<label class="rating-title" title="9 stars"
|
||||
for="score-9">9 stars</label>
|
||||
|
||||
<input type="radio" id="score-8" name="score"
|
||||
value="8" />
|
||||
<label class="rating-title" title="8 stars"
|
||||
for="score-8">8 stars</label>
|
||||
|
||||
<input type="radio" id="score-7" name="score"
|
||||
value="7" />
|
||||
<label class="rating-title" title="7 stars"
|
||||
for="score-7">7 stars</label>
|
||||
|
||||
<input type="radio" id="score-6" name="score"
|
||||
value="6" />
|
||||
<label class="rating-title" title="6 stars"
|
||||
for="score-6">6 stars</label>
|
||||
|
||||
<input type="radio" id="score-5" name="score"
|
||||
value="5" />
|
||||
<label class="rating-title" title="5 stars"
|
||||
for="score-5">5 stars</label>
|
||||
|
||||
<input type="radio" id="score-4" name="score"
|
||||
value="4" />
|
||||
<label class="rating-title" title="4 stars"
|
||||
for="score-4">4 stars</label>
|
||||
|
||||
<input type="radio" id="score-3" name="score"
|
||||
value="3" />
|
||||
<label class="rating-title" title="3 stars"
|
||||
for="score-3">3 stars</label>
|
||||
|
||||
<input type="radio" id="score-2" name="score"
|
||||
value="2" />
|
||||
<label class="rating-title" title="2 stars"
|
||||
for="score-2">2 stars</label>
|
||||
|
||||
<input type="radio" id="score-1" name="score"
|
||||
value="1" />
|
||||
<label class="rating-title" title="1 stars"
|
||||
for="score-1">1 stars</label>
|
||||
</center>
|
||||
</fieldset>
|
||||
Average User Rating: <span class="rating-avg">1.00</span> (1
|
||||
votes)<br>
|
||||
My Rating: <a id="ratings-login"
|
||||
href="https://www.mytelly.co.uk/user/login">Sign in</a> or
|
||||
<a href="https://www.mytelly.co.uk/user/provider/">Register</a>
|
||||
to view last vote
|
||||
</p>
|
||||
</center>
|
||||
</div>
|
||||
<!--END RATINGS-->
|
||||
<a href="https://www.mytelly.co.uk/user/provider" class="remindme"
|
||||
target="_blank"><img class="cfa-icon cfa-search"
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/pic/ott-icons/add-to-faves.png?v=920241207" />
|
||||
Add to Favorites</a>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
|
||||
<div class="tab-holder shortcode-tabs">
|
||||
<div class="tab-hold tabs-wrapper">
|
||||
<div class="tab-content">
|
||||
<div id="tab1" class="tab-pane">
|
||||
<center>
|
||||
<h3 class="thin">About this Broadcast</h3><img
|
||||
src="https://d2po7v53a8yrck.cloudfront.net/pic/ott-tv-strip.png"
|
||||
alt="-" width="300" height="11" border="0" hspace="0"
|
||||
vspace="0">
|
||||
</center>
|
||||
<div class="program-media-image">
|
||||
<img class="w-100" vspace="18" hspace="0"
|
||||
src="https://d16ia5iwuvax6y.cloudfront.net/uk-prog-images/2039278182b27cc279570b9ab9b89379.jpg?k=VeeNdUjml3bSHdlZ0OXbGLy%2BmsLdYPwTV6iAxGkzq4cDhR7jXTNFW3tgwQCdOPUobhXwlT81mIsqOe93HPusDG6tw1aoeYOgafojtynNWxc%3D" />
|
||||
</div>
|
||||
<h5><strong>
|
||||
Past and Pressure<br />
|
||||
Season 6, Episode 5
|
||||
</strong></h5>
|
||||
<div class="tvbody">
|
||||
<p>The artists are tasked with writing a song about their heritage.
|
||||
For some, the pressure of the competition proves too much for
|
||||
them to match. In their final challenge, they are put face to
|
||||
face with industry experts who grill them about their plans
|
||||
after the competition. Some impress, while others leave the
|
||||
mentors confused</p>
|
||||
</div>
|
||||
<div class="schedule-attributes">
|
||||
<span>HD</span>
|
||||
<span>subtitles</span>
|
||||
<span>repeat</span>
|
||||
<span>16x9</span>
|
||||
</div>
|
||||
<div class="schedule-attributes-genres">
|
||||
<span>Challenge/Reality Show</span>
|
||||
<span>Show/Game Show</span>
|
||||
</div>
|
||||
<hr class="otthr">
|
||||
<p>
|
||||
<center>
|
||||
<h3 class="thin">
|
||||
Cast & Crew
|
||||
</h3><img
|
||||
src="https://d2po7v53a8yrck.cloudfront.net/pic/ott-tv-strip.png"
|
||||
alt="-" width="300" height="11" border="0" hspace="0"
|
||||
vspace="0">
|
||||
</center><br>
|
||||
<div class="tvbody">
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12153" class="anchor-cast-trivia">
|
||||
<strong>Konan </strong>
|
||||
</a>
|
||||
(Presenter)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12154" class="anchor-cast-trivia">
|
||||
<strong>Krept </strong>
|
||||
</a>
|
||||
(Presenter)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12155" class="anchor-cast-trivia">
|
||||
<strong>DJ Target</strong>
|
||||
</a>
|
||||
(Presenter)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12156" class="anchor-cast-trivia">
|
||||
<strong>Hetal Dhanak</strong>
|
||||
</a>
|
||||
(Series producer)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12157" class="anchor-cast-trivia">
|
||||
<strong>Tom O'Brien</strong>
|
||||
</a>
|
||||
(Executive producer)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12158" class="anchor-cast-trivia">
|
||||
<strong>Paul Broadbent</strong>
|
||||
</a>
|
||||
(Executive producer)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head">
|
||||
<a href="#trivia-12159" class="anchor-cast-trivia">
|
||||
<strong>Trent Williams-Jones</strong>
|
||||
</a>
|
||||
(Executive producer)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
|
||||
<hr class="otthr">
|
||||
<p>
|
||||
<center>
|
||||
<h3 class="thin">More Information</h3><img
|
||||
src="https://d2po7v53a8yrck.cloudfront.net/pic/ott-tv-strip.png"
|
||||
alt="-" width="300" height="11" border="0" hspace="0"
|
||||
vspace="0">
|
||||
<br><br>
|
||||
<a style="padding-top:5px"
|
||||
href='https://imdb.com/find?s=all&q=The+Rap+Game+UK'
|
||||
class="btn btn-warning e_pulse" target="_blank">
|
||||
<center><img
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/img/IMDB.png?v=920241207"
|
||||
width="65" height="auto" vspace="0" hspace="0"
|
||||
alt="No Logo"></center>
|
||||
</a>
|
||||
</center>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!--start Upcoming Times-->
|
||||
|
||||
<!--start Upcoming Times-->
|
||||
|
||||
<br />
|
||||
<div class="tab-holder shortcode-tabs">
|
||||
<div class="tab-hold tabs-wrapper">
|
||||
<div class="tab-content">
|
||||
<div id="tab1" class="tab-pane">
|
||||
|
||||
<center>
|
||||
<h3 class="thin">Upcoming Broadcasts</h3><img
|
||||
src="https://d2po7v53a8yrck.cloudfront.net/pic/ott-tv-strip.png"
|
||||
alt="-" width="300" height="11" border="0" hspace="0"
|
||||
vspace="0"><br><br>
|
||||
<div class="tvbody">
|
||||
<p><b>The Rap Game UK</b> is scheduled to broadcast again at the
|
||||
following times</p>
|
||||
</div>
|
||||
</center>
|
||||
<hr class="otthr"><br>
|
||||
|
||||
<div class="widget-title">
|
||||
<h5 class="widgetheading nowrap">Saturday, December 07</h5>
|
||||
</div>
|
||||
<table class="table table-hover">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>
|
||||
<h5 class="thin"><strong>Time</strong></h5>
|
||||
</th>
|
||||
<th>
|
||||
<h5 class="thin"><strong>Episode</strong></h5>
|
||||
</th>
|
||||
<th>
|
||||
<h5 class="thin"><strong>Channel</strong></h5>
|
||||
</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr>
|
||||
<td>
|
||||
<h5 class="widgetheading nowrap">11:35 pm</h5>
|
||||
</td>
|
||||
<td>
|
||||
<h5 class="widgetheading"><i><a
|
||||
href="https://www.mytelly.co.uk/tv-guide/listings/programme?cid=2363&pid=5656624&tm=2024-12-07+23%3A35%3A00"
|
||||
rel="nofollow">
|
||||
The Rap Game UK </a></i>
|
||||
</h5>
|
||||
<h6>
|
||||
Season: 6,
|
||||
Episode: 5
|
||||
</h6>
|
||||
<h6>
|
||||
The artists are tasked with writing a song about
|
||||
their heritage. For some, the pressure of the
|
||||
competition proves too much for them to match. In
|
||||
their final challenge, they are put face to face
|
||||
with industry experts who grill them about their
|
||||
plans after the competition. Some impress, while
|
||||
others leave the mentors confused
|
||||
</h6>
|
||||
</td>
|
||||
<td>
|
||||
<h5 class="widgetheading">
|
||||
<a
|
||||
href="https://www.mytelly.co.uk/tv-guide/listings/channel/2363/bbc-one-channel-islands-hd.html">
|
||||
BBC One Channel Islands HD
|
||||
(101)
|
||||
</a>
|
||||
<br />
|
||||
</h5>
|
||||
<small>(BT TV)</small>
|
||||
</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--end Upcoming Times-->
|
||||
|
||||
<br />
|
||||
<div class="tab-holder shortcode-tabs">
|
||||
<div class="tab-hold tabs-wrapper">
|
||||
<div class="tab-content">
|
||||
<div id="tab1" class="tab-pane">
|
||||
|
||||
<center>
|
||||
<h3 class="thin">
|
||||
Did You Know..
|
||||
</h3><img
|
||||
src="https://d2po7v53a8yrck.cloudfront.net/pic/ott-tv-strip.png"
|
||||
alt="-" width="300" height="11" border="0" hspace="0"
|
||||
vspace="0"><br><br>
|
||||
</center>
|
||||
<div class="tvbody">
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12153">
|
||||
<strong>Konan </strong>
|
||||
(Presenter)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12154">
|
||||
<strong>Krept </strong>
|
||||
(Presenter)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12155">
|
||||
<strong>DJ Target</strong>
|
||||
(Presenter)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12156">
|
||||
<strong>Hetal Dhanak</strong>
|
||||
(Series producer)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12157">
|
||||
<strong>Tom O'Brien</strong>
|
||||
(Executive producer)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12158">
|
||||
<strong>Paul Broadbent</strong>
|
||||
(Executive producer)
|
||||
</div>
|
||||
</div>
|
||||
<div class="single-cast mb-3">
|
||||
<div class="single-cast-head" id="trivia-12159">
|
||||
<strong>Trent Williams-Jones</strong>
|
||||
(Executive producer)
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<br>
|
||||
<!--start Before After -->
|
||||
<div class="tab-holder shortcode-tabs">
|
||||
<div class="tab-hold tabs-wrapper">
|
||||
<div class="tab-content">
|
||||
<div id="tab1" class="tab-pane">
|
||||
<center>
|
||||
<h3 class="thin">Before / After</h3><img
|
||||
src="https://d2po7v53a8yrck.cloudfront.net/pic/ott-tv-strip.png"
|
||||
alt="-" width="300" height="11" border="0" hspace="0"
|
||||
vspace="0">
|
||||
</center><br>
|
||||
<table width="100%" cellpadding="0" cellspacing="0" border="0">
|
||||
<tr>
|
||||
<td width="50%" align="left" valign="top">
|
||||
<table cellpadding="5">
|
||||
<tr>
|
||||
<td valign="top"><a
|
||||
href="https://www.mytelly.co.uk/tv-guide/listings/programme?cid=1663&pid=5658641&tm=2024-12-07+22%3A25%3A00"
|
||||
class="btn btn-small btn-default btn-rounded e_pulse"
|
||||
rel="nofollow">
|
||||
<img class="cfa-icon"
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/pic/ott-icons/show-previous.png?v=920241207" />
|
||||
</a></td>
|
||||
<td valign="top">
|
||||
<div class="tvbody"><b><a
|
||||
href='https://www.mytelly.co.uk/tv-guide/listings/programme?cid=1663&pid=5658641&tm=2024-12-07+22%3A25%3A00'
|
||||
rel="nofollow">Match of the
|
||||
Day</a></b><br>10:25 pm</div>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
<td width="50%" align="right" valign="top">
|
||||
<table cellpadding="5">
|
||||
<tr>
|
||||
<td align="right" valign="top">
|
||||
<div class="tvbody"><b><a
|
||||
href='https://www.mytelly.co.uk/tv-guide/listings/programme?cid=1663&pid=5656265&tm=2024-12-08+00%3A40%3A00'
|
||||
rel="nofollow">The Graham Norton
|
||||
Show</a></b><br>12:40 am</div>
|
||||
</td>
|
||||
<td valign="top"><a
|
||||
href="https://www.mytelly.co.uk/tv-guide/listings/programme?cid=1663&pid=5656265&tm=2024-12-08+00%3A40%3A00"
|
||||
class="btn btn-small btn-default btn-rounded e_pulse"
|
||||
rel="nofollow">
|
||||
<img class="cfa-icon"
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/pic/ott-icons/show-next.png?v=920241207" />
|
||||
</a></td>
|
||||
</tr>
|
||||
</table>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!--end Before After -->
|
||||
|
||||
</div>
|
||||
<!-- Start sidebar-->
|
||||
<div class="col col-12 col-lg-4 user-sidebar">
|
||||
<aside class="right-sidebar">
|
||||
<!--start side bar nav-->
|
||||
<div class="widget">
|
||||
<p><a href="https://www.mytelly.co.uk/user/provider/" target="_blank"><img
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/img/free-television-guide-23.png?v=920241207"
|
||||
border="0" alt="Start customising your television guide!"
|
||||
width="300"></a></p>
|
||||
<p><a class="btn btn-listings e_pulse fw-bold fs-7 w-100 text-white"
|
||||
href="https://www.mytelly.co.uk/user/provider/" target="_blank">New?
|
||||
Join for free</a></p>
|
||||
<p><a class="btn btn-listings e_pulse fw-bold fs-7 w-100 text-white"
|
||||
href="https://www.mytelly.co.uk/user/login/" target="_blank">A member?
|
||||
Sign in</a></p><br>
|
||||
</div> <!--end side bar nav-->
|
||||
<hr class="otthr">
|
||||
<div class="widget-title">
|
||||
<h5 class="widgetheading">Before / After</h5>
|
||||
</div>
|
||||
<h5 class="thin">
|
||||
10:25 pm
|
||||
: <a href='https://www.mytelly.co.uk/tv-guide/listings/programme?cid=1663&pid=5658641&tm=2024-12-07+22%3A25%3A00'
|
||||
rel="nofollow">Match of the Day</a>
|
||||
<p>
|
||||
<p> 12:40 am
|
||||
: <a href='https://www.mytelly.co.uk/tv-guide/listings/programme?cid=1663&pid=5656265&tm=2024-12-08+00%3A40%3A00'
|
||||
rel="nofollow">The Graham Norton Show</a>
|
||||
<br>
|
||||
</h5>
|
||||
</p>
|
||||
<hr class="otthr">
|
||||
</aside>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
<!-- End Content-->
|
||||
<!-- Modal -->
|
||||
<div id="wrongCountryModal" class="modal hide fade" tabindex="-1" role="dialog"
|
||||
aria-labelledby="wrongCountryModalLabel" aria-hidden="true">
|
||||
<div class="modal-header">
|
||||
<button type="button" class="close" data-dismiss="modal" aria-hidden="true"><EFBFBD></button>
|
||||
<h3 id="wrongCountryModalLabel">Error</h3>
|
||||
</div>
|
||||
<div class="modal-body">
|
||||
<p>You can not favourite a USA TV guide show, please go to settings to switch your country. </p>
|
||||
</div>
|
||||
<div class="modal-footer">
|
||||
<button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start Footer-->
|
||||
<footer class="main-footer">
|
||||
<div class="container">
|
||||
<div class="row bottom2">
|
||||
<div class="span3">
|
||||
<div class="widget about">
|
||||
<h5 class="widgetheading">About My Telly</h5>
|
||||
<div class="sidebar-line"><span></span></div>
|
||||
<ul class="link-list">
|
||||
<li>My Telly is your guide to what's on TV and streaming across the UK. My Telly covers
|
||||
every TV programme and movie broadcasting and streaming near you.</li>
|
||||
</ul>
|
||||
<br>
|
||||
<a href="https://www.ontvtonight.com/advertise/"
|
||||
class="btn btn-listings e_pulse fw-bold fs-7 w-100 text-white"
|
||||
style="max-width: 200px; text-align: center;">Advertise with us</a>
|
||||
<br>
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
<div class="span3">
|
||||
<div class="widget">
|
||||
<h5 class="widgetheading">TV Listings</h5>
|
||||
<div class="sidebar-line"><span></span></div>
|
||||
<ul class="link-list">
|
||||
<li><a href="https://www.mytelly.co.uk/">My Telly</a></li>
|
||||
<li><a href="https://www.mytelly.co.uk/tv-guide/">UK TV Guide</a></li>
|
||||
<li><a href="https://www.ontvtonight.com/">On TV Tonight</a></li>
|
||||
<li><a href="https://www.ontvtonight.com/guide/">American TV Listings Guide</a></li>
|
||||
<li><a href="https://www.ontvtonight.com/au/guide/">Australian TV Guide</a></li>
|
||||
<li><a href="https://www.ontvtonight.com/ca/guide/">Canadian TV Guide</a></li>
|
||||
<li><a href="https://www.tvireland.ie/">Irish TV Guide</a></li>
|
||||
<li><a href="https://www.tvcesoir.fr/">TV Ce Soir</a></li>
|
||||
<li><a href="https://www.guida.tv/">Guida TV</a></li>
|
||||
</ul>
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
<div class="span3">
|
||||
<div class="widget">
|
||||
<h5 class="widgetheading">UK TV Guide Apps</h5>
|
||||
<div class="sidebar-line"><span></span></div>
|
||||
<p><a href="https://itunes.apple.com/gb/app/tv-guide-uk/id1415766150?mt=8"><img
|
||||
src="https://www.mytelly.co.uk/pic/iphone-tv-listings-guide.png?v=920230804"
|
||||
alt="TV Listings Guide App UK iPhone App" width="150" height="44" border="0"
|
||||
hspace="0" vspace="5"></a><br><a
|
||||
href="https://play.google.com/store/apps/details?id=uk.co.ontvtonight.mobile"><img
|
||||
src="https://www.mytelly.co.uk/pic/google-play-tv-listings-guide.png?v=920230804"
|
||||
alt="TV Listings Guide UK Android App" width="150" height="44" border="0" hspace="0"
|
||||
vspace="5"></a><br><a href="https://www.amazon.co.uk/dp/B07G99LN87"><img
|
||||
src="https://www.mytelly.co.uk/pic/amazon-tv-listings-guide.png?v=920230804"
|
||||
alt="TV Listings Guide Amazon App" width="150" height="44" border="0" hspace="0"
|
||||
vspace="5"></a></p>
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
<div class="span3">
|
||||
<div class="widget">
|
||||
<h5 class="widgetheading">My Telly</h5>
|
||||
<div class="sidebar-line"><span></span></div>
|
||||
<ul class="link-list">
|
||||
<li><a href="/tv-guide/tvbycity.html">TV listings by City</a></li>
|
||||
<li><a href="/tv-guide/tvproviders.html">TV service providers</a></li>
|
||||
<li><a href="/apps/">TV App for iPhone, iPad & Android</a></li>
|
||||
<li><a href="/about">About Us</a></li>
|
||||
<li><a href="/contact">Contact Us</a></li>
|
||||
<br>
|
||||
</ul>
|
||||
</div>
|
||||
<br>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
<!-- Start Sub-Footer-->
|
||||
<div class="container">
|
||||
<div class="row">
|
||||
<div>
|
||||
<div class="sub-footer-sq"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div id="sub-footer">
|
||||
<div class="container">
|
||||
<div class="row bottom3">
|
||||
<div class="span7">
|
||||
<div class="copyright">
|
||||
<p><span class="first">© 2024 My Telly | <a
|
||||
href="https://www.mytelly.co.uk/notices/">Legal Notices</a> | <a
|
||||
href="https://www.mytelly.co.uk/privacy/">Privacy Policy</a></span></p>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<a href="/" class="logof"><img
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/pic/ontvtonight-footer.png?v=920241207"
|
||||
alt="My Telly" class="logo" /></a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- End Sub-Footer-->
|
||||
</footer>
|
||||
<!-- End Footer-->
|
||||
<!-- javascript
|
||||
================================================== -->
|
||||
<!-- Placed at the end of the document so the pages load faster -->
|
||||
<script data-cfasync="false" async src="//cdn.intergient.com/ramp_core.js"></script>
|
||||
<script type="text/javascript"
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/js/bootstrap/bootstrap.bundle.min.js?v=920241207"></script>
|
||||
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8/jquery.min.js"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.easing.1.3.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/bootstrap/bootstrap.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.fancybox.pack.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.fancybox-media.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/google-code-prettify/prettify.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.flexslider.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.nivo.slider.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/modernizr.custom.79639.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.ba-cond.min.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/animate.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/waypoints.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/waypoints-sticky.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jQuery.appear.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/custom.js?v=920241207"></script>
|
||||
<script type="text/javascript"
|
||||
src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.flexisel.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/jquery.cookie.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/colorpicker/js/colorpicker.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/optionspanel.js?v=920241207"></script>
|
||||
<script src="https://d1wvpqjf5ymz68.cloudfront.net/js/Sortable.min.js?v=920241207"></script>
|
||||
<!-- <script type='text/javascript' src='https://d1wvpqjf5ymz68.cloudfront.net/feedbackform.js?v=920241207'></script> -->
|
||||
</body>
|
||||
|
||||
</html>
|
|
@ -1,6 +1,89 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="4Music.uk" site_id="1438/4music">4Music</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="63/mtv-xmas">MTV XMAS</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="73/phoenix-cne-channel">Phoenix CNE Channel</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="74/udave">U&Dave</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="92/bloomberg">Bloomberg</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="134/ugold">U&Gold</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="154/ualibi">U&Alibi</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="874/nicktoons">Nicktoons</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="899/ugold-1">U&Gold +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="908/uyesterday">U&Yesterday</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="993/ueden">U&Eden</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1003/ueden-1">U&Eden +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1031/legend-xtra">Legend Xtra</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1068/uyesterday-1">U&Yesterday +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1079/udave-ja-vu">U&Dave ja vu</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1163/great-christmas">GREAT! christmas</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1218/ualibi-1">U&Alibi +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1318/sky-cinema-80s">Sky Cinema 80s</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1326/sky-cinema-favourites">Sky Cinema Favourites</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1327/sky-cinema-epics">Sky Cinema Epics</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1432/great-christmas-1">GREAT! christmas +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1437/legend-xtra-1">Legend Xtra +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1441/uw">U&W</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1446/sky-cinema-favourites-hd">Sky Cinema Favourites HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1451/uw-1">U&W +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1512/true-crime">True Crime</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1514/sky-cinema-epics-hd">Sky Cinema Epics HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1517/true-crime-1">True Crime +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1518/true-crime-xtra">True Crime Xtra</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1531/nick-jr-too">Nick Jr. Too</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1536/sky-cinema-80s-hd">Sky Cinema 80s HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1603/ueden-hd">U&Eden HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1618/lfc-tv">LFC TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1638/premier-sports-1-hd">Premier Sports 1 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1658/uw-hd">U&W HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1659/udave-hd">U&Dave HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1665/bbc-one-yorkshire-lincolnshire">BBC One Yorkshire & Lincolnshire</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1739/ualibi-hd">U&Alibi HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1798/udrama">U&Drama</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1818/brit-asia">Brit Asia</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1856/rte-one-hd">RTE One HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1942/leeds-tv">Leeds TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1943/bristol-tv">Bristol TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1944/tyne-wear-tv">Tyne & Wear TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="1945/cardiff-tv">Cardiff TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2007/ndtv-world">NDTV World</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2039/arirang">Arirang</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2051/birmingham-tv">Birmingham TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2052/liverpool-tv">Liverpool TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2057/blaze-1-freeview">Blaze +1 (Freeview)</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2077/new-vision-tv">New Vision TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2088/sky-sports">Sky Sports +</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2089/sky-sports-hd">Sky Sports + HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2108/ugold-hd">U&Gold HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2134/tnt-sports-box-office">TNT Sports Box Office</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2249/ary-digital">ARY Digital</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2253/hum-europe">HUM Europe</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2270/premier-sports-2-hd">Premier Sports 2 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2275/udrama-1">U&Drama +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2296/tnt-sports-box-office-2">TNT Sports Box Office 2</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2377/talk">Talk</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2380/uyesterday-hd">U&Yesterday HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2384/thats-christmas">That's Christmas</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2393/udrama-hd">U&Drama HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2397/thats-melody-mcr">That's Melody MCR</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2400/thats-melody">That's Melody</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2425/cula4">Cula4</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2434/thats-tv-mcr">That's TV MCR</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2436/thats-fabulous-mcr">That's Fabulous MCR</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2437/thats-fabulous">That's Fabulous</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2442/thats-tv-2">That's TV 2</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2443/north-wales-tv">North Wales TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2444/teesside-tv">Teesside TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2448/itv1-channel-television-hd">ITV1 Channel Television HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2449/itv1-border-scotland-hd">ITV1 Border Scotland HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2450/sky-sports-tennis">Sky Sports Tennis</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2451/sky-sports-tennis-hd">Sky Sports Tennis HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2459/rewind-tv">Rewind TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2460/music-india">Music India</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2461/now-xmas">NOW XMAS</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2464/thats-christmas">That's Christmas</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2465/thats-tv-2-mcr">That's TV 2 MCR</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2466/thats-dance-freeview">That's Dance (Freeview)</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2467/thats-dance-mcr-and-sky">That's Dance (MCR and Sky)</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="" site_id="2471/cartoonito-hd">Cartoonito HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="4seven.uk" site_id="1684/4seven">4seven</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="4sevenHD.uk" site_id="1888/4seven-hd">4seven HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="5Action.uk" site_id="2141/5action">5Action</channel>
|
||||
|
@ -10,16 +93,11 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="5STARPlus1.uk" site_id="1485/5star-1">5STAR +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="5USA.uk" site_id="1290/5usa">5USA</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="5USAPlus1.uk" site_id="1484/5usa-1">5USA +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="alibi.uk" site_id="154/alibi">Alibi</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="alibiHD.uk" site_id="1739/alibi-hd">Alibi HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="alibiPlus1.uk" site_id="1218/alibi-1">Alibi +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="AlJazeeraEnglish.qa" site_id="1349/al-jazeera-english">Al Jazeera English</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="AlJazeeraEnglishHD.qa" site_id="1855/al-jazeera-english-hd">Al Jazeera English HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="AnimalPlanet.uk" site_id="168/animal-planet">Animal Planet</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="AnimalPlanetHD.uk" site_id="1669/animal-planet-hd">Animal Planet HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="AnimalPlanetPlus1.uk" site_id="700/animal-planet-1">Animal Planet +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ArirangTVHD.kr" site_id="2039/arirang-hd">Arirang HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="AyozatTV.uk" site_id="1990/ayozat-tv">Ayozat TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="B4UMoviesUK.uk" site_id="619/b4u-movies">B4U Movies</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="B4UMusicUK.uk" site_id="1815/b4u-music">B4U Music</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="BabyTV.uk" site_id="1761/baby-tv">Baby TV</channel>
|
||||
|
@ -38,7 +116,6 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="BBCOneEastHD.uk" site_id="2364/bbc-one-east-hd">BBC One East HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="BBCOneEastMidlands.uk" site_id="10/bbc-one-east-midlands">BBC One East Midlands</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="BBCOneEastMidlandsHD.uk" site_id="2365/bbc-one-east-midlands-hd">BBC One East Midlands HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="BBCOneHD.uk" site_id="1609/bbc-one-hd">BBC One HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="BBCOneLondon.uk" site_id="713/bbc-one-london">BBC One London</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="BBCOneLondonHD.uk" site_id="2366/bbc-one-london-hd">BBC One London HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="BBCOneNorthEastCumbria.uk" site_id="13/bbc-one-north-east-cumbria">BBC One North East & Cumbria</channel>
|
||||
|
@ -96,8 +173,6 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="CBBCHD.uk" site_id="1849/cbbc-hd">CBBC HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="CBeebies.uk" site_id="734/cbeebies">CBeebies</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="CBeebiesHD.uk" site_id="1850/cbeebies-hd">CBeebies HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="CBSReality.uk" site_id="1512/cbs-reality">CBS Reality</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="CBSRealityPlus1.uk" site_id="1517/cbs-reality-1">CBS Reality +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Challenge.uk" site_id="170/challenge">Challenge</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Channel4.uk" site_id="53/channel-4">Channel 4</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Channel4HD.uk" site_id="1404/channel-4-hd">Channel 4 HD</channel>
|
||||
|
@ -126,9 +201,6 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="CrimePlusInvestigationHD.uk" site_id="1480/crime-investigation-hd">Crime + Investigation HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="CrimePlusInvestigationPlus1.uk" site_id="1491/crime-investigation-1">Crime + Investigation +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Cula4HD.ie" site_id="2438/cula4-hd">Cula4 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Dave.uk" site_id="74/dave">Dave</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="DaveHD.uk" site_id="1659/dave-hd">Dave HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Davejavu.uk" site_id="1079/dave-ja-vu">Dave ja vu</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="DiscoveryChannel.uk" site_id="169/discovery-channel">Discovery Channel</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="DiscoveryChannelHD.uk" site_id="1233/discovery-channel-hd">Discovery Channel HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="DiscoveryChannelPlus1.uk" site_id="706/discovery-channel-1">Discovery Channel +1</channel>
|
||||
|
@ -140,19 +212,10 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="DiscoveryTurboPlus1.uk" site_id="2113/discovery-turbo-1">Discovery Turbo +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="DMAX.uk" site_id="1405/dmax">DMAX</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="DMAXPlus1.uk" site_id="1538/dmax-1">DMAX +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Drama.uk" site_id="1798/drama">Drama</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="DramaHD.uk" site_id="2393/drama-hd">Drama HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="DramaPlus1.uk" site_id="2275/drama-1">Drama +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="E.uk" site_id="934/e-entertainment">E! Entertainment</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="E4.uk" site_id="605/e4">E4</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="E4Extra.uk" site_id="914/e4-extra">E4 Extra</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="E4HD.uk" site_id="1534/e4-hd">E4 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="E4Plus1.uk" site_id="1055/e4-1">E4 +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="EarthxTV.us" site_id="2385/earthx-tv">Earthx TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Eden.uk" site_id="993/eden">Eden</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="EdenHD.uk" site_id="1603/eden-hd">Eden HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="EdenPlus1.uk" site_id="1003/eden-1">Eden +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="EHD.uk" site_id="1764/e-entertainment-hd">E! Entertainment HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="EuronewsEnglish.fr" site_id="1867/euronews">Euronews</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Eurosport1.uk" site_id="275/eurosport-1">Eurosport 1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Eurosport1HD.uk" site_id="1434/eurosport-1-hd">Eurosport 1 HD</channel>
|
||||
|
@ -163,28 +226,20 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Film4Plus1.uk" site_id="708/film4-1">Film4 +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="FoodNetwork.uk" site_id="1523/food-network">Food Network</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="FoodNetworkPlus1.uk" site_id="1524/food-network-1">Food Network +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Foodxp.uk" site_id="2272/foodxp">Foodxp</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="France24English.fr" site_id="1760/france-24-english">France 24 English</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="France24EnglishHD.fr" site_id="2139/france-24-english-hd">France 24 English HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GBNews.uk" site_id="2339/gb-news">GB News</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GBNewsHD.uk" site_id="2340/gb-news-hd">GB News HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GeoNewsInternational.pk" site_id="2130/geo-news">GEO News</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GeoUK.uk" site_id="2128/geo-tv">GEO TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GOLD.uk" site_id="134/gold">GOLD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GOLDHD.uk" site_id="2108/gold-hd">GOLD HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GOLDPlus1.uk" site_id="899/gold-1">GOLD +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GREATaction.uk" site_id="1431/great-action">GREAT! action</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GREATactionPlus1.uk" site_id="1541/great-action-1">GREAT! action +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GREATmovies.uk" site_id="1680/great-movies">GREAT! movies</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GREATmoviesPlus1.uk" site_id="1681/great-movies-1">GREAT! movies +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GREATromance.uk" site_id="1163/great-movies-christmas">GREAT! movies christmas</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GREATromancePlus1.uk" site_id="1432/great-movies-christmas-1">GREAT! movies christmas +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GREATtv.uk" site_id="1548/great-tv">GREAT! tv</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="GREATtvPlus1.uk" site_id="1785/great-tv-1">GREAT! tv +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="HGTV.uk" site_id="89/hgtv">HGTV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="HGTVPlus1.uk" site_id="756/hgtv-1">HGTV +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="HorrorXtra.uk" site_id="1031/horrorxtra">HorrorXtra</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="HorrorXtraPlus1.uk" site_id="1437/horrorxtra-1">HorrorXtra +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="IdealWorldTV.uk" site_id="1026/ideal-world">Ideal World</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="InvestigationDiscovery.uk" site_id="1460/investigation-discovery">Investigation Discovery</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="InvestigationDiscoveryPlus1.uk" site_id="1795/investigation-discovery-1">Investigation Discovery +1</channel>
|
||||
|
@ -235,20 +290,16 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ITVBe.uk" site_id="1900/itvbe">ITVBe</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ITVBeHD.uk" site_id="1930/itvbe-hd">ITVBe HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ITVBePlus1.uk" site_id="1931/itvbe-1">ITVBe +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Kerrang.uk" site_id="913/kerrang-tv">Kerrang! TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="KissTV.uk" site_id="410/kiss-tv">Kiss TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Legend.uk" site_id="1520/legend">Legend</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="LFCTVHD.uk" site_id="1928/lfc-tv-hd">LFC TV HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="LondonLive.uk" site_id="1863/london-live">London Live</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Magic.uk" site_id="915/magic">Magic</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="More4.uk" site_id="1167/more4">More4</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="More4HD.uk" site_id="1780/more4-hd">More4 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="More4Plus1.uk" site_id="1168/more4-1">More4 +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Movies24.uk" site_id="1226/christmas-24">Christmas 24</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Movies24Plus.uk" site_id="1526/christmas-24">Christmas 24+</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="MTV.uk" site_id="64/mtv">MTV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="MTV80s.uk" site_id="151/mtv-80s">MTV 80s</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="MTV90s.uk" site_id="63/mtv-90s">MTV 90s</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="MTV.uk" site_id="64/mtv">MTV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="MTVHD.uk" site_id="1672/mtv-hd">MTV HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="MTVHits.uk" site_id="59/mtv-hits">MTV Hits</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="MTVLive.uk" site_id="1762/mtv-live-hd">MTV Live HD</channel>
|
||||
|
@ -260,8 +311,6 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NationalGeographicPlus1.uk" site_id="710/national-geographic-channel-1">National Geographic Channel +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NationalGeographicWild.uk" site_id="1307/national-geographic-wild">National Geographic WILD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NationalGeographicWildHD.uk" site_id="1482/national-geographic-wild-hd">National Geographic WILD HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NDTV24x7.in" site_id="2007/ndtv-24x7">NDTV 24x7</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NewVision.uk" site_id="2077/new-vision">New Vision</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NHKWorldJapan.jp" site_id="1535/nhk-world">NHK World</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NHKWorldJapanHD.jp" site_id="1646/nhk-world-hd">NHK World HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Nickelodeon.uk" site_id="188/nickelodeon">Nickelodeon</channel>
|
||||
|
@ -270,8 +319,6 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NickJr.uk" site_id="195/nick-jr">Nick Jr.</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NickJrHD.uk" site_id="2017/nick-jr-hd">Nick Jr. HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NickJrPlus1.uk" site_id="1763/nick-jr-1">Nick Jr. +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NickJrToo.uk" site_id="1531/nick-jr-peppa">Nick Jr. Peppa</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Nicktoons.uk" site_id="874/nickloudhouse">NickLoudHouse</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="NottsTV.uk" site_id="1891/notts-tv">Notts TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Now70s.uk" site_id="1917/now-70s">NOW 70s</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Now80s.uk" site_id="1915/now-80s">NOW 80s</channel>
|
||||
|
@ -288,8 +335,8 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="QuestPlus1.uk" site_id="1521/quest-1">Quest +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="QuestRed.uk" site_id="2060/quest-red">Quest Red</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="QuestRedPlus1.uk" site_id="2061/quest-red-1">Quest Red +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="QVC.uk" site_id="216/qvc">QVC</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="QVC2.uk" site_id="2422/qvc2">QVC2</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="QVC.uk" site_id="216/qvc">QVC</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="QVCBeauty.uk" site_id="2256/qvc-beauty">QVC Beauty</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="QVCExtra.uk" site_id="2257/qvc-extra">QVC Extra</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="QVCHD.uk" site_id="2408/qvc-hd">QVC HD</channel>
|
||||
|
@ -297,7 +344,6 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="QVCStyleHD.uk" site_id="2409/qvc-style-hd">QVC Style HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="RacingTV.uk" site_id="1051/racing-tv">Racing TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="RacingTVHD.uk" site_id="1992/racing-tv-hd">Racing TV HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="RealityXtra.uk" site_id="1518/realityxtra">RealityXtra</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Really.uk" site_id="1084/really">Really</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="RTE2.ie" site_id="82/rte2">RTE2</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="RTE2HD.ie" site_id="1648/rte2-hd">RTE2 HD</channel>
|
||||
|
@ -322,17 +368,10 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaDramaHD.uk" site_id="1445/sky-cinema-christmas-hd">Sky Cinema Christmas HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaFamily.uk" site_id="1323/sky-cinema-family">Sky Cinema Family</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaFamilyHD.uk" site_id="1448/sky-cinema-family-hd">Sky Cinema Family HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaGreats.uk" site_id="1326/sky-cinema-greats">Sky Cinema Greats</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaGreatsHD.uk" site_id="1446/sky-cinema-greats-hd">Sky Cinema Greats HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaHits.uk" site_id="1318/sky-cinema-bourne">Sky Cinema Bourne</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaHitsHD.uk" site_id="1536/sky-cinema-hits-hd">Sky Cinema Hits HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaPremiere.uk" site_id="1320/sky-cinema-premiere">Sky Cinema Premiere</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaPremiereHD.uk" site_id="1417/sky-cinema-premiere-hd">Sky Cinema Premiere HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaPremierePlus1.uk" site_id="1321/sky-cinema-premiere-1">Sky Cinema Premiere +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaSciFiHorror.uk" site_id="1329/sky-cinema-sci-fihorror">Sky Cinema Sci-fi/Horror</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaSciFiHorrorHD.uk" site_id="1447/sky-cinema-sci-fihorror-hd">Sky Cinema Sci-fi/Horror HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaSelect.uk" site_id="1327/sky-cinema-heroines">Sky Cinema Heroines</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaSelectHD.uk" site_id="1514/sky-cinema-heroines-hd">Sky Cinema Heroines HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaThriller.uk" site_id="1319/sky-cinema-thriller">Sky Cinema Thriller</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCinemaThrillerHD.uk" site_id="1537/sky-cinema-thriller-hd">Sky Cinema Thriller HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyComedy.uk" site_id="2305/sky-comedy">Sky Comedy</channel>
|
||||
|
@ -342,9 +381,9 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyCrimePlus1.uk" site_id="1470/sky-crime-1">Sky Crime +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyDocumentaries.uk" site_id="2315/sky-documentaries">Sky Documentaries</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyDocumentariesHD.uk" site_id="2316/sky-documentaries-hd">Sky Documentaries HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyHistory.uk" site_id="171/sky-history">Sky History</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyHistory2.uk" site_id="1435/sky-history-2">Sky History 2</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyHistory2HD.uk" site_id="2042/sky-history-2-hd">Sky History 2 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyHistory.uk" site_id="171/sky-history">Sky History</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyHistoryHD.uk" site_id="1354/sky-history-hd">Sky History HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyHistoryPlus1.uk" site_id="702/sky-history-1">Sky History +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyKids.uk" site_id="2394/sky-kids">Sky Kids</channel>
|
||||
|
@ -363,9 +402,6 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyShowcase.uk" site_id="222/sky-showcase">Sky Showcase</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyShowcaseHD.uk" site_id="1355/sky-showcase-hd">Sky Showcase HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkyShowcasePlus1.uk" site_id="1568/sky-showcase-1">Sky Showcase +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkySportsArena.uk" site_id="2088/sky-sports-arena">Sky Sports Arena</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkySportsArenaHD.uk" site_id="2089/sky-sports-arena-hd">Sky Sports Arena HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkySportsBoxOffice.uk" site_id="1938/sky-sports-box-office">Sky Sports Box Office</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkySportsCricket.uk" site_id="433/sky-sports-cricket">Sky Sports Cricket</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkySportsCricketHD.uk" site_id="1285/sky-sports-cricket-hd">Sky Sports Cricket HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SkySportsF1.uk" site_id="1670/sky-sports-f1">Sky Sports F1</channel>
|
||||
|
@ -396,45 +432,21 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SonyMax.uk" site_id="1813/sony-max">Sony MAX</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SonyMaxHD.uk" site_id="2099/sony-max-hd">Sony MAX HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SonySABAsia.in" site_id="1810/sony-sab">Sony SAB</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="SportyStuffHD.uk" site_id="2050/sportystuff-tv-hd">Sportystuff TV HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="STVCentral.uk" site_id="40/stv-central">STV Central</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="STVCentralPlus1.uk" site_id="1620/stv-central-1">STV Central +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="STVHD.uk" site_id="1572/stv-hd">STV HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="STVNorth.uk" site_id="41/stv-north">STV North</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="STVNorthPlus1.uk" site_id="1808/stv-north-1">STV North +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TalkBirmingham.uk" site_id="2051/talkbirmingham">TalkBirmingham</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TalkBristol.uk" site_id="1943/talkbristol">TalkBristol</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TalkCardiff.uk" site_id="1945/talkcardiff">TalkCardiff</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TalkingPicturesTV.uk" site_id="1946/talking-pictures-tv">Talking Pictures TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TalkLeeds.uk" site_id="1942/talkleeds">TalkLeeds</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TalkLiverpool.uk" site_id="2052/talkliverpool">TalkLiverpool</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TalkNorthWales.uk" site_id="2443/talknorthwales">TalkNorthWales</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TalkTeesside.uk" site_id="2444/talkteesside">TalkTeesside</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TalkTV.uk" site_id="2361/talk-tv">Talk TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TalkTVHD.uk" site_id="2377/talk-tv-hd">Talk TV HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TalkTyneWear.uk" site_id="1944/talktynewear">TalkTyne&Wear</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TG4.ie" site_id="83/tg4">TG4</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TG4HD.ie" site_id="1773/tg4-hd">TG4 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Thats60s.uk" site_id="2384/thats-60s">That's 60s</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Thats60sMCRFreeview.uk" site_id="2399/thats-60s-mcr-freeview">That's 60s (MCR Freeview)</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Thats70s.uk" site_id="2442/thats-christmas">That's Christmas</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Thats70sMCRFreeview.uk" site_id="2418/thats-70s-mcr-freeview">That's 70s (MCR Freeview)</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Thats80s.uk" site_id="2400/thats-80s">That's 80s</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Thats80sFreeview.uk" site_id="2397/thats-80s-freeview">That's 80s (Freeview)</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Thats90s.uk" site_id="2437/thats-90s">That's 90s</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Thats90sMCRFreeview.uk" site_id="2436/thats-90s-mcr-freeview">That's 90s (MCR Freeview)</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ThatsTV.uk" site_id="2351/thats-tv">That's TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ThatsTVFreeview.uk" site_id="2434/thats-tv-freeview">That's TV (Freeview)</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TheBox.uk" site_id="93/the-box">The Box</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TinyPop.uk" site_id="1402/tiny-pop">Tiny Pop</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TinyPopFreeview.uk" site_id="2001/tiny-pop-freeview">Tiny Pop (Freeview)</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TinyPopPlus1.uk" site_id="1545/tiny-pop-1">Tiny Pop +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TLC.uk" site_id="1789/tlc">TLC</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TLCHD.uk" site_id="1794/tlc-hd">TLC HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TLCPlus1.uk" site_id="1790/tlc-1">TLC +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSports1.uk" site_id="1804/tnt-sports-1">TNT Sports 1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSports10.uk" site_id="1960/tnt-sports-10">TNT Sports 10</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSports10HD.uk" site_id="1967/tnt-sports-10-hd">TNT Sports 10 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSports1HD.uk" site_id="1805/tnt-sports-1-hd">TNT Sports 1 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSports2.uk" site_id="1806/tnt-sports-2">TNT Sports 2</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSports2HD.uk" site_id="1807/tnt-sports-2-hd">TNT Sports 2 HD</channel>
|
||||
|
@ -452,14 +464,13 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSports8HD.uk" site_id="1965/tnt-sports-8-hd">TNT Sports 8 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSports9.uk" site_id="1959/tnt-sports-9">TNT Sports 9</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSports9HD.uk" site_id="1966/tnt-sports-9-hd">TNT Sports 9 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSportsBoxOffice2HD.uk" site_id="2296/tnt-sports-box-office-hd-2">TNT Sports Box Office HD 2</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSports10.uk" site_id="1960/tnt-sports-10">TNT Sports 10</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSports10HD.uk" site_id="1967/tnt-sports-10-hd">TNT Sports 10 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSportsBoxOfficeHD.uk" site_id="1939/sky-sports-box-office-hd">Sky Sports Box Office HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSportsBoxOfficeHD.uk" site_id="2134/tnt-sports-box-office-hd">TNT Sports Box Office HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSportsUltimate.uk" site_id="1954/tnt-sports-ultimate">TNT Sports Ultimate</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TNTSportsUltimate.uk" site_id="2387/tnt-sports-ultimate">TNT Sports Ultimate</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TogetherTV.uk" site_id="1288/together-tv">Together TV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TogetherTVPlus1.uk" site_id="2274/together-tv-1">Together TV +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TraceVault.uk" site_id="1902/trace-vault">Trace Vault</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Travelxp.in" site_id="2140/travelxp">Travelxp</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TRTWorld.tr" site_id="2082/trt-world">TRT World</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="TRTWorldHD.tr" site_id="2083/trt-world-hd">TRT World HD</channel>
|
||||
|
@ -472,16 +483,7 @@
|
|||
<channel site="mytelly.co.uk" lang="en" xmltv_id="UTV.uk" site_id="39/utv">UTV</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="UTVHD.uk" site_id="1605/utv-hd">UTV HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="UTVPlus1.uk" site_id="1621/utv-1">UTV +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ViaplaySports1HD.uk" site_id="1638/viaplay-sports-1-hd">Viaplay Sports 1 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ViaplaySports2HD.uk" site_id="2270/viaplay-sports-2-hd">Viaplay Sports 2 HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ViaplayXtraHD.uk" site_id="2138/viaplay-xtra-hd">Viaplay Xtra HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="W.uk" site_id="1441/w">W</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="WHD.uk" site_id="1658/w-hd">W HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="WildEarth.uk" site_id="2396/wildearth">WildEarth</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="WPlus1.uk" site_id="1451/w-1">W +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="Yesterday.uk" site_id="908/yesterday">Yesterday</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="YesterdayHD.uk" site_id="2380/yesterday-hd">Yesterday HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="YesterdayPlus1.uk" site_id="1068/yesterday-1">Yesterday +1</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ZeeCinemaHDUK.uk" site_id="2236/zee-cinema-hd">Zee Cinema HD</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ZeeCinemaUK.uk" site_id="1571/zee-cinema">Zee Cinema</channel>
|
||||
<channel site="mytelly.co.uk" lang="en" xmltv_id="ZeeTVHDUK.uk" site_id="2137/zee-tv-hd">Zee TV HD</channel>
|
||||
|
|
|
@ -3,131 +3,255 @@ const dayjs = require('dayjs')
|
|||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
const debug = require('debug')('site:mytelly.co.uk')
|
||||
|
||||
dayjs.extend(utc)
|
||||
dayjs.extend(timezone)
|
||||
dayjs.extend(customParseFormat)
|
||||
|
||||
const detailedGuide = true
|
||||
const tz = 'Europe/London'
|
||||
const nworker = 25
|
||||
|
||||
module.exports = {
|
||||
site: 'mytelly.co.uk',
|
||||
days: 2,
|
||||
url: function ({ date, channel }) {
|
||||
url({ date, channel }) {
|
||||
return `https://www.mytelly.co.uk/tv-guide/listings/channel/${
|
||||
channel.site_id
|
||||
}.html?dt=${date.format('YYYY-MM-DD')}`
|
||||
},
|
||||
parser: function ({ content, date, channel }) {
|
||||
async parser({ content, date, channel }) {
|
||||
const programs = []
|
||||
const items = parseItems(content)
|
||||
items.forEach(item => {
|
||||
const prev = programs[programs.length - 1]
|
||||
const $item = cheerio.load(item)
|
||||
let start = parseStart($item, date, channel)
|
||||
if (prev) {
|
||||
if (start.isBefore(prev.start)) {
|
||||
start = start.add(1, 'd')
|
||||
date = date.add(1, 'd')
|
||||
}
|
||||
prev.stop = start
|
||||
}
|
||||
const stop = start.add(30, 'm')
|
||||
programs.push({
|
||||
title: parseTitle($item),
|
||||
start,
|
||||
stop
|
||||
|
||||
if (content) {
|
||||
const queues = []
|
||||
const $ = cheerio.load(content)
|
||||
|
||||
$('table.table > tbody > tr').toArray()
|
||||
.forEach(el => {
|
||||
const td = $(el).find('td:eq(1)')
|
||||
const title = td.find('h5 a')
|
||||
if (detailedGuide) {
|
||||
queues.push(title.attr('href'))
|
||||
} else {
|
||||
const subtitle = td.find('h6')
|
||||
const time = $(el).find('td:eq(0)')
|
||||
let start = parseTime(date, time.text().trim())
|
||||
const prev = programs[programs.length - 1]
|
||||
if (prev) {
|
||||
if (start.isBefore(prev.start)) {
|
||||
start = start.add(1, 'd')
|
||||
date = date.add(1, 'd')
|
||||
}
|
||||
prev.stop = start
|
||||
}
|
||||
const stop = start.add(30, 'm')
|
||||
programs.push({
|
||||
title: parseText(title),
|
||||
subTitle: parseText(subtitle),
|
||||
start,
|
||||
stop
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
if (queues.length) {
|
||||
await doFetch(queues, (url, res) => {
|
||||
const $ = cheerio.load(res)
|
||||
const time = $('center > h5 > b').text()
|
||||
const title = parseText($('.inner-heading.sub h2'))
|
||||
const subTitle = parseText($('.tab-pane > h5 > strong'))
|
||||
const description = parseText($('.tab-pane > .tvbody > p'))
|
||||
const image = $('.program-media-image img').attr('src')
|
||||
const category = $('.schedule-attributes-genres span').toArray()
|
||||
.map(el => $(el).text())
|
||||
const casts = $('.single-cast-head:not([id])').toArray()
|
||||
.map(el => {
|
||||
const cast = { name: parseText($(el).find('a')) }
|
||||
const [, role] = $(el).text().match(/\((.*)\)/) || [null, null]
|
||||
if (role) {
|
||||
cast.role = role
|
||||
}
|
||||
return cast
|
||||
})
|
||||
const [start, stop] = parseStartStop(date, time)
|
||||
let season, episode
|
||||
if (subTitle) {
|
||||
const [, ses, epi] = subTitle.match(/Season (\d+), Episode (\d+)/) || [null, null]
|
||||
if (ses) {
|
||||
season = parseInt(ses)
|
||||
}
|
||||
if (epi) {
|
||||
episode = parseInt(epi)
|
||||
}
|
||||
}
|
||||
programs.push({
|
||||
title,
|
||||
subTitle,
|
||||
description,
|
||||
image,
|
||||
category,
|
||||
season,
|
||||
episode,
|
||||
actor: casts.filter(c => c.role === 'Actor').map(c => c.name),
|
||||
director: casts.filter(c => c.role === 'Director').map(c => c.name),
|
||||
presenter: casts.filter(c => c.role === 'Presenter').map(c => c.name),
|
||||
start,
|
||||
stop
|
||||
})
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
return programs
|
||||
},
|
||||
async channels() {
|
||||
const channels = {}
|
||||
const axios = require('axios')
|
||||
const _ = require('lodash')
|
||||
|
||||
const providers = [
|
||||
'-3000053',
|
||||
'-4000118',
|
||||
'-11000199',
|
||||
'-1000007',
|
||||
'-2000007',
|
||||
'-12000220',
|
||||
'-5000136',
|
||||
'-10000178'
|
||||
]
|
||||
const regions = [
|
||||
'Cambridgeshire',
|
||||
'Channel Islands',
|
||||
'Cumbria',
|
||||
'East',
|
||||
'East Midlands',
|
||||
'Yorkshire & Lincolnshire',
|
||||
'London',
|
||||
'North East',
|
||||
'North West',
|
||||
'Northern Ireland',
|
||||
'Oxfordshire',
|
||||
'Scotland (Borders)',
|
||||
'Scotland (Central)',
|
||||
'Scotland (North)',
|
||||
'South',
|
||||
'South East',
|
||||
'South West',
|
||||
'Wales',
|
||||
'West',
|
||||
'West Midlands',
|
||||
'Yorkshire'
|
||||
]
|
||||
|
||||
const channels = []
|
||||
for (let provider of providers) {
|
||||
for (let region of regions) {
|
||||
const data = await axios
|
||||
.post(`https://www.mytelly.co.uk/tv-guide/schedule`, null, {
|
||||
params: {
|
||||
provider,
|
||||
region,
|
||||
TVperiod: 'Night',
|
||||
date: dayjs().format('YYYY-MM-DD'),
|
||||
st: 0,
|
||||
u_time: 1955,
|
||||
is_mobile: 1
|
||||
const queues = [{ t: 'p', m: 'post', u: 'https://www.mytelly.co.uk/getform' }]
|
||||
await doFetch(queues, (queue, res) => {
|
||||
// process form -> provider
|
||||
if (queue.t === 'p') {
|
||||
const $ = cheerio.load(res)
|
||||
$('#guide_provider option').toArray()
|
||||
.forEach(el => {
|
||||
const opt = $(el)
|
||||
const provider = opt.attr('value')
|
||||
queues.push({ t: 'r', m: 'post', u: 'https://www.mytelly.co.uk/getregions', params: { provider } })
|
||||
})
|
||||
}
|
||||
// process provider -> region
|
||||
if (queue.t === 'r') {
|
||||
const now = dayjs()
|
||||
for (const r of Object.values(res)) {
|
||||
const params = {
|
||||
provider: queue.params.provider,
|
||||
region: r.title,
|
||||
TVperiod: 'Night',
|
||||
date: now.format('YYYY-MM-DD'),
|
||||
st: 0,
|
||||
u_time: now.format('HHmm'),
|
||||
is_mobile: 1
|
||||
}
|
||||
queues.push({ t: 's', m: 'post', u: 'https://www.mytelly.co.uk/tv-guide/schedule', params })
|
||||
}
|
||||
}
|
||||
// process schedule -> channels
|
||||
if (queue.t === 's') {
|
||||
const $ = cheerio.load(res)
|
||||
$('.channelname')
|
||||
.each((i, el) => {
|
||||
const name = $(el).find('center > a:eq(1)').text()
|
||||
const url = $(el).find('center > a:eq(1)').attr('href')
|
||||
const [, number, slug] = url.match(/\/(\d+)\/(.*)\.html$/)
|
||||
const site_id = `${number}/${slug}`
|
||||
if (channels[site_id] === undefined) {
|
||||
channels[site_id] = {
|
||||
lang: 'en',
|
||||
site_id,
|
||||
name
|
||||
}
|
||||
}
|
||||
})
|
||||
.then(r => r.data)
|
||||
.catch(console.log)
|
||||
|
||||
const $ = cheerio.load(data)
|
||||
$('.channelname').each((i, el) => {
|
||||
const name = $(el).find('center > a:eq(1)').text()
|
||||
const url = $(el).find('center > a:eq(1)').attr('href')
|
||||
const [, number, slug] = url.match(/\/(\d+)\/(.*)\.html$/)
|
||||
|
||||
channels.push({
|
||||
lang: 'en',
|
||||
name,
|
||||
site_id: `${number}/${slug}`
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
})
|
||||
|
||||
return _.uniqBy(channels, 'site_id')
|
||||
return Object.values(channels)
|
||||
}
|
||||
}
|
||||
|
||||
function parseStart($item, date, channel) {
|
||||
const timeString = $item('td:eq(0)').text().trim()
|
||||
const dateString = `${date.format('YYYY-MM-DD')} ${timeString}`
|
||||
function parseStartStop(date, time) {
|
||||
const [s, e] = time.split(' - ')
|
||||
const start = parseTime(date, s)
|
||||
let stop = parseTime(date, e)
|
||||
if (stop.isBefore(start)) {
|
||||
stop = stop.add(1, 'd')
|
||||
}
|
||||
|
||||
return dayjs.tz(dateString, 'YYYY-MM-DD H:mm a', 'Europe/London')
|
||||
return [start, stop]
|
||||
}
|
||||
|
||||
function parseTitle($item) {
|
||||
return $item('td:eq(1)').text().trim()
|
||||
function parseTime(date, time) {
|
||||
return dayjs.tz(`${date.format('YYYY-MM-DD')} ${time}`, 'YYYY-MM-DD H:mm a', tz)
|
||||
}
|
||||
|
||||
function parseItems(content) {
|
||||
const $ = cheerio.load(content)
|
||||
function parseText($item) {
|
||||
let text = $item.text()
|
||||
.replace(/\t/g, '')
|
||||
.replace(/\n/g, ' ')
|
||||
.trim()
|
||||
while (true) {
|
||||
if (text.match(/ /)) {
|
||||
text = text.replace(/ /g, ' ')
|
||||
continue
|
||||
}
|
||||
break
|
||||
}
|
||||
|
||||
return $('table.table > tbody > tr').toArray()
|
||||
return text
|
||||
}
|
||||
|
||||
async function doFetch(queues, cb) {
|
||||
const axios = require('axios')
|
||||
|
||||
let n = Math.min(nworker, queues.length)
|
||||
const workers = []
|
||||
const adjustWorker = () => {
|
||||
if (queues.length > workers.length && workers.length < nworker) {
|
||||
let nw = Math.min(nworker, queues.length)
|
||||
if (n < nw) {
|
||||
n = nw
|
||||
createWorker()
|
||||
}
|
||||
}
|
||||
}
|
||||
const createWorker = () => {
|
||||
while (workers.length < n) {
|
||||
startWorker()
|
||||
}
|
||||
}
|
||||
const startWorker = () => {
|
||||
const worker = () => {
|
||||
if (queues.length) {
|
||||
const queue = queues.shift()
|
||||
const done = res => {
|
||||
if (res) {
|
||||
cb(queue, res)
|
||||
adjustWorker()
|
||||
}
|
||||
worker()
|
||||
}
|
||||
const url = typeof queue === 'string' ? queue : queue.u
|
||||
const params = typeof queue === 'object' && queue.params ? queue.params : {}
|
||||
const method = typeof queue === 'object' && queue.m ? queue.m : 'get'
|
||||
debug(`fetch %s with %s`, url, JSON.stringify(params))
|
||||
if (method === 'post') {
|
||||
axios
|
||||
.post(url, params)
|
||||
.then(response => done(response.data))
|
||||
.catch(console.error)
|
||||
} else {
|
||||
axios
|
||||
.get(url, params)
|
||||
.then(response => done(response.data))
|
||||
.catch(console.error)
|
||||
}
|
||||
} else {
|
||||
workers.splice(workers.indexOf(worker), 1)
|
||||
}
|
||||
}
|
||||
workers.push(worker)
|
||||
worker()
|
||||
}
|
||||
createWorker()
|
||||
await new Promise(resolve => {
|
||||
const interval = setInterval(() => {
|
||||
if (workers.length === 0) {
|
||||
clearInterval(interval)
|
||||
resolve()
|
||||
}
|
||||
}, 500)
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
@ -1,47 +1,81 @@
|
|||
const { parser, url } = require('./mytelly.co.uk.config.js')
|
||||
const axios = require('axios')
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
|
||||
dayjs.extend(customParseFormat)
|
||||
dayjs.extend(utc)
|
||||
|
||||
const date = dayjs.utc('2023-11-26', 'YYYY-MM-DD').startOf('d')
|
||||
jest.mock('axios')
|
||||
|
||||
const date = dayjs.utc('2024-12-07', 'YYYY-MM-DD').startOf('d')
|
||||
const channel = {
|
||||
site_id: '713/bbc-one-london',
|
||||
xmltv_id: 'BBCOneLondon.uk'
|
||||
}
|
||||
|
||||
axios.get.mockImplementation((url, opts) => {
|
||||
if (
|
||||
url === 'https://www.mytelly.co.uk/tv-guide/listings/programme?cid=713&pid=1906433&tm=2024-12-07+00%3A00%3A00'
|
||||
) {
|
||||
return Promise.resolve({
|
||||
data: fs.readFileSync(path.join(__dirname, '__data__', 'programme.html'))
|
||||
})
|
||||
}
|
||||
if (
|
||||
url === 'https://www.mytelly.co.uk/tv-guide/listings/programme?cid=713&pid=5656624&tm=2024-12-07+23%3A35%3A00'
|
||||
) {
|
||||
return Promise.resolve({
|
||||
data: fs.readFileSync(path.join(__dirname, '__data__', 'programme2.html'))
|
||||
})
|
||||
}
|
||||
|
||||
return Promise.resolve({ data: '' })
|
||||
})
|
||||
|
||||
it('can generate valid url', () => {
|
||||
expect(url({ channel, date })).toBe(
|
||||
'https://www.mytelly.co.uk/tv-guide/listings/channel/713/bbc-one-london.html?dt=2023-11-26'
|
||||
'https://www.mytelly.co.uk/tv-guide/listings/channel/713/bbc-one-london.html?dt=2024-12-07'
|
||||
)
|
||||
})
|
||||
|
||||
it('can parse response', () => {
|
||||
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.html'))
|
||||
const results = parser({ content, channel, date }).map(p => {
|
||||
it('can parse response', async () => {
|
||||
const content = fs.readFileSync(path.join(__dirname, '__data__', 'content.html'))
|
||||
const results = (await parser({ content, channel, date })).map(p => {
|
||||
p.start = p.start.toJSON()
|
||||
p.stop = p.stop.toJSON()
|
||||
return p
|
||||
})
|
||||
|
||||
expect(results.length).toBe(2)
|
||||
expect(results[0]).toMatchObject({
|
||||
start: '2023-11-26T00:15:00.000Z',
|
||||
stop: '2023-11-26T01:20:00.000Z',
|
||||
title: 'The Rap Game UK'
|
||||
start: '2024-12-07T00:00:00.000Z',
|
||||
stop: '2024-12-07T02:05:00.000Z',
|
||||
title: 'Captain Phillips',
|
||||
description:
|
||||
'An American cargo ship sets a dangerous course around the coast of Somalia, while inland, four men are pressed into service as pirates by the local warlords. The captain is taken hostage when the raiding party hijacks the vessel, resulting in a tense five-day crisis. Fact-based thriller, starring Tom Hanks and Barkhad Abdi',
|
||||
image: 'https://d16ia5iwuvax6y.cloudfront.net/uk-prog-images/c44ce7b0d3ae602c0c93ece5af140815.jpg?k=VeeNdUjml3bSHdlZ0OXbGLy%2BmsLdYPwTV6iAxGkzq4dsylOCGGE7OWlqwSWt0cd0Qtrin4DkEMC0Zzdp8ZeNk2vNIQzjMF0DG0h3IeTR5NM%3D',
|
||||
category: ['Factual', 'Movie/Drama', 'Thriller']
|
||||
})
|
||||
|
||||
expect(results[28]).toMatchObject({
|
||||
start: '2023-11-26T23:30:00.000Z',
|
||||
stop: '2023-11-27T00:00:00.000Z',
|
||||
title: "The Women's Football Show"
|
||||
expect(results[1]).toMatchObject({
|
||||
start: '2024-12-07T23:35:00.000Z',
|
||||
stop: '2024-12-08T00:40:00.000Z',
|
||||
title: 'The Rap Game UK',
|
||||
subTitle: 'Past and Pressure Season 6, Episode 5',
|
||||
description:
|
||||
'The artists are tasked with writing a song about their heritage. For some, the pressure of the competition proves too much for them to match. In their final challenge, they are put face to face with industry experts who grill them about their plans after the competition. Some impress, while others leave the mentors confused',
|
||||
image: 'https://d16ia5iwuvax6y.cloudfront.net/uk-prog-images/2039278182b27cc279570b9ab9b89379.jpg?k=VeeNdUjml3bSHdlZ0OXbGLy%2BmsLdYPwTV6iAxGkzq4cDhR7jXTNFW3tgwQCdOPUobhXwlT81mIsqOe93HPusDG6tw1aoeYOgafojtynNWxc%3D',
|
||||
category: ['Challenge/Reality Show', 'Show/Game Show'],
|
||||
season: 6,
|
||||
episode: 5
|
||||
})
|
||||
})
|
||||
|
||||
it('can handle empty guide', () => {
|
||||
const result = parser({
|
||||
it('can handle empty guide', async () => {
|
||||
const result = await parser({
|
||||
date,
|
||||
channel,
|
||||
content: '<!DOCTYPE html><html><head></head><body></body></html>'
|
||||
|
|
|
@ -95,6 +95,7 @@
|
|||
<channel site="nostv.pt" lang="pt" xmltv_id="Mezzo.fr" site_id="50">Mezzo</channel>
|
||||
<channel site="nostv.pt" lang="en" xmltv_id="MezzoLive.fr" site_id="356">Mezzo Live HD</channel>
|
||||
<channel site="nostv.pt" lang="pt" xmltv_id="Motorvision.de" site_id="354">Motorvision HD</channel>
|
||||
<channel site="nostv.pt" lang="pt" xmltv_id="NewsNow.pt" site_id="705">Now</channel>
|
||||
<channel site="nostv.pt" lang="pt" xmltv_id="MTV00s.uk" site_id="35">MTV 00s</channel>
|
||||
<channel site="nostv.pt" lang="pt" xmltv_id="MTV.pt" site_id="377">MTV Portugal HD</channel>
|
||||
<channel site="nostv.pt" lang="en" xmltv_id="MTVLive.uk" site_id="560">MTV Live</channel>
|
||||
|
@ -142,6 +143,7 @@
|
|||
<channel site="nostv.pt" lang="pt" xmltv_id="SportTV4.pt" site_id="247">SPORT TV4 HD</channel>
|
||||
<channel site="nostv.pt" lang="pt" xmltv_id="SportTV5.pt" site_id="180">SPORT TV5 HD</channel>
|
||||
<channel site="nostv.pt" lang="pt" xmltv_id="SportTV6.pt" site_id="610">Sport TV 6 HD</channel>
|
||||
<channel site="nostv.pt" lang="pt" xmltv_id="" site_id="706">Sport TV 7 HD</channel>
|
||||
<channel site="nostv.pt" lang="pt" xmltv_id="SportTVPlus.pt" site_id="417">SPORT TV+ HD</channel>
|
||||
<channel site="nostv.pt" lang="en" xmltv_id="StingrayiConcerts.ca" site_id="42">Stingray iConcerts HD</channel>
|
||||
<channel site="nostv.pt" lang="pt" xmltv_id="Syfy.pt" site_id="201">Syfy HD</channel>
|
||||
|
|
|
@ -139,41 +139,57 @@ module.exports = {
|
|||
function fetchApiVersion() {
|
||||
return new Promise(async (resolve, reject) => {
|
||||
try {
|
||||
// https://px-epg.azureedge.net/version is deprecated
|
||||
// probably the version url will be changed around over time
|
||||
// you'll never find what happened here :)
|
||||
// load pickx bundle and get react version hash (regex).
|
||||
// it's not the best way to get the version but it's the only way to get it.
|
||||
|
||||
//history of used version urls
|
||||
//const versionUrl = 'https://www.pickx.be/api/s-3b36540f3cef64510112f3f95c2c0cdca321997ed2b1042ad778523235e155eb'
|
||||
//const versionUrl = 'https://www.pickx.be/api/s-671f172425e1bc74cd0440fd67aaa6cbe68b582f3f401186c2f46ae97e80516b'
|
||||
//const versionUrl = 'https://www.pickx.be/api/s-a6b4b4fefaa20e438523a6167e63b8504d96b9df8303473349763c4418cffe30'
|
||||
//const versionUrl = 'https://www.pickx.be/api/s-8546c5fd136241d42aab714d2fe3ccc5671fd899035efae07cd0b8f4eb23994e'
|
||||
//const versionUrl = 'https://www.pickx.be/api/s-64464ad9a3bc117af5dca620027216ecade6a51c230135a0f134c0ee042ff407';
|
||||
//const versionUrl = 'https://www.pickx.be/api/s-626d8fdabfb1d44e5a614cd69f4b45d6843fdb63566fc80ea4f97f40e4ea3152';
|
||||
//const versionUrl = 'https://www.pickx.be/api/s-cefaf96e249e53648c4895c279e7a621233c50b4357d62b0bdf6bff45f31b5c0';
|
||||
//const versionUrl = 'https://www.pickx.be/api/s-7fa35253080e9665f9c7d9d85e707d6fb1d1bf07ede11965e859fcb57c723949';
|
||||
//const versionUrl = 'https://www.pickx.be/api/s-0e58be3938175b6b900dfb5233bd5cfc0bcf915b633fe57b935f7ce8dbe5f6eb';
|
||||
//the new strategy to break the provider is to leave old version url's available and to return invalid results on those endpoints
|
||||
|
||||
const versionUrl = 'https://www.pickx.be//api/s-600b22979b1e1e1dc91773795eed4a630dea2f9452aa1aab9a2947f4c89b901d';
|
||||
|
||||
|
||||
|
||||
const response = await axios.get(versionUrl, {
|
||||
headers: {
|
||||
Origin: 'https://www.pickx.be',
|
||||
Referer: 'https://www.pickx.be/'
|
||||
}
|
||||
// find bundle version
|
||||
const minBundleVer = "https://www.pickx.be/minimal-bundle-version"
|
||||
const bundleVerData = await axios.get(minBundleVer, {
|
||||
headers: {
|
||||
Origin: 'https://www.pickx.be',
|
||||
Referer: 'https://www.pickx.be/'
|
||||
}
|
||||
})
|
||||
|
||||
if (response.status === 200) {
|
||||
apiVersion = response.data.version
|
||||
resolve()
|
||||
if (bundleVerData.status !== 200) {
|
||||
console.error(`Failed to fetch bundle version. Status: ${bundleVerData.status}`)
|
||||
reject(`Failed to fetch bundle version. Status: ${bundleVerData.status}`)
|
||||
} else {
|
||||
console.error(`Failed to fetch API version. Status: ${response.status}`)
|
||||
reject(`Failed to fetch API version. Status: ${response.status}`)
|
||||
const bundleVer = bundleVerData.data.version
|
||||
// get the minified JS app bundle
|
||||
const bundleUrl = `https://components.pickx.be/pxReactPlayer/${bundleVer}/bundle.min.js`
|
||||
|
||||
// now, find the react hash inside the bundle URL
|
||||
const bundle = await axios.get(bundleUrl).then(r => {
|
||||
const re = /REACT_APP_VERSION_HASH:"([^"]+)"/
|
||||
const match = r.data.match(re)
|
||||
if (match && match[1]) {
|
||||
return match[1]
|
||||
} else {
|
||||
throw new Error('React app version hash not found')
|
||||
}
|
||||
}).catch(console.error)
|
||||
|
||||
const versionUrl = `https://www.pickx.be/api/s-${bundle.replace('/REACT_APP_VERSION_HASH:"', '')}`
|
||||
|
||||
const response = await axios.get(versionUrl, {
|
||||
headers: {
|
||||
Origin: 'https://www.pickx.be',
|
||||
Referer: 'https://www.pickx.be/'
|
||||
}
|
||||
})
|
||||
|
||||
if (response.status === 200) {
|
||||
apiVersion = response.data.version
|
||||
resolve()
|
||||
} else {
|
||||
console.error(`Failed to fetch API version. Status: ${response.status}`)
|
||||
reject(`Failed to fetch API version. Status: ${response.status}`)
|
||||
}
|
||||
}
|
||||
} catch (error) {
|
||||
console.error('Error fetching API version:', error.message)
|
||||
console.error('Error during fetchApiVersion:', error)
|
||||
reject(error)
|
||||
}
|
||||
})
|
||||
|
|
File diff suppressed because one or more lines are too long
1
sites/programme.tvb.com/__data__/content.json
Normal file
1
sites/programme.tvb.com/__data__/content.json
Normal file
|
@ -0,0 +1 @@
|
|||
{"code":0,"message":"","data":{"total":1,"list":[{"network_code":"j","ref_date":20241206,"schedules":[{"box_set_id":203,"network_code":"J","video_ratio":"2","video_definition":"1","event_time":1733500200,"event_datetime":"2024-12-06 23:50:00","programme_title":"天氣報告[粵] 及 潮流生活誌[粵]","en_programme_title":"Weather Report[Can] and Pop Lifestyle Guide (Ad Mag)[Can]","synopsis":"","en_synopsis":"","programme_path":"weatherreport_203","default_language":1,"play_available":1,"mytv_super_url":"https://www.mytvsuper.com/tc/programme/weatherreport_203/天氣報告[粵] 及 潮流生活誌[粵]","on_air_code":"L2,","tag":[{"icon":"hd","title":"HD"}]},{"box_set_id":0,"network_code":"J","video_ratio":"2","video_definition":"1","event_time":1733500500,"event_datetime":"2024-12-06 23:55:00","programme_title":"使徒行者3#16[粵][PG]","en_programme_title":"Line Walker: Bull Fight#16[Can][PG]","synopsis":"文鼎從淑梅手上救走大聖爺兒子,大聖爺還恩於歡喜,答允支持九指強。崇聯社定下選舉日子,恰巧是韋傑出獄之日,頭目們顧念舊日恩義,紛紛轉投浩洋。浩洋帶亞希逛傢俬店,憧憬二人未來。亞希向家強承認愛上浩洋,要求退出臥底任務。作榮與歡喜暗中會面,將國際犯罪組織「永恆幫」情報交給他。阿火遭家強出賣,到沐足店搶錢。家強逮住阿火,惟被合星誤會而受拘捕。家強把正植遺下的頸鏈和學生證交還,合星意識到家強已知悉正植身世。","en_synopsis":"","programme_path":"","default_language":0,"play_available":0,"mytv_super_url":"","on_air_code":"S2,C2,C3,C1,A,PG11L,","tag":[{"icon":"s","title":"繁/簡中文字幕"},{"icon":"e","title":"英文字幕"},{"icon":"pg","title":"PG11L"},{"icon":"hd","title":"HD"}]},{"box_set_id":0,"network_code":"J","video_ratio":"1","video_definition":"2","event_time":1733504100,"event_datetime":"2024-12-07 00:55:00","programme_title":"宣傳易[粵]","en_programme_title":"TV Easy[Can]","synopsis":"","en_synopsis":"","programme_path":"","default_language":0,"play_available":0,"mytv_super_url":"","on_air_code":"D2,","tag":[]}]}]}}
|
|
@ -1,3 +0,0 @@
|
|||
|
||||
<ul class="clearfix" date="2022-11-15">
|
||||
</ul>
|
|
@ -1,12 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="J2.hk" site_id="B">J2</channel>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="Jade.hk" site_id="J">翡翠台</channel>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="Pearl.hk" site_id="P">Pearl</channel>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="TVBChineseDrama.hk" site_id="U">華語劇台</channel>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="TVBClassic.hk" site_id="E">TVB經典台</channel>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="TVBClassicMovies.hk" site_id="W">粵語片台</channel>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="TVBFinanceSportsInformationChannel.hk" site_id="A">無綫財經體育資訊台</channel>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="TVBNewsChannel.hk" site_id="C">無綫新聞台</channel>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="TVBXingHe.hk" site_id="X">TVB星河頻道</channel>
|
||||
</channels>
|
|
@ -1,5 +1,4 @@
|
|||
const dayjs = require('dayjs')
|
||||
const cheerio = require('cheerio')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
|
@ -8,57 +7,88 @@ dayjs.extend(utc)
|
|||
dayjs.extend(timezone)
|
||||
dayjs.extend(customParseFormat)
|
||||
|
||||
const tz = 'Asia/Hong_Kong'
|
||||
|
||||
module.exports = {
|
||||
site: 'programme.tvb.com',
|
||||
days: 2,
|
||||
url: function ({ channel, date }) {
|
||||
return `https://programme.tvb.com/ajax.php?action=channellist&code=${
|
||||
channel.site_id
|
||||
}&date=${date.format('YYYY-MM-DD')}`
|
||||
url({ channel, date, time = null }) {
|
||||
return `https://programme.tvb.com/api/schedule?input_date=${
|
||||
date.format('YYYYMMDD')
|
||||
}&network_code=${channel.site_id}&_t=${time ? time : parseInt(Date.now() / 1000)}`
|
||||
},
|
||||
parser: function ({ content, date }) {
|
||||
let programs = []
|
||||
const items = parseItems(content)
|
||||
items.forEach(item => {
|
||||
const prev = programs[programs.length - 1]
|
||||
const $item = cheerio.load(item)
|
||||
let start = parseStart($item, date)
|
||||
if (prev) {
|
||||
if (start.isBefore(prev.start)) {
|
||||
start = start.add(1, 'd')
|
||||
date = date.add(1, 'd')
|
||||
parser({ content, channel, date }) {
|
||||
const programs = []
|
||||
const data = content ? JSON.parse(content) : {}
|
||||
if (Array.isArray(data.data?.list)) {
|
||||
const dt = date.format('YYYY-MM-DD')
|
||||
for (const d of data.data.list) {
|
||||
if (Array.isArray(d.schedules)) {
|
||||
const schedules = d.schedules
|
||||
.filter(s => s.network_code === channel.site_id)
|
||||
schedules.forEach((s, i) => {
|
||||
const start = dayjs.tz(s.event_datetime, 'YYYY-MM-DD HH:mm:ss', tz)
|
||||
let stop
|
||||
if (i < schedules.length - 1) {
|
||||
stop = dayjs.tz(schedules[i + 1].event_datetime, 'YYYY-MM-DD HH:mm:ss', tz)
|
||||
} else {
|
||||
stop = date.add(1, 'd')
|
||||
}
|
||||
programs.push({
|
||||
title: channel.lang === 'en' ? s.en_programme_title : s.programme_title,
|
||||
description: channel.lang === 'en' ? s.en_synopsis : s.synopsis,
|
||||
start,
|
||||
stop
|
||||
})
|
||||
})
|
||||
}
|
||||
prev.stop = start
|
||||
}
|
||||
const stop = start.add(30, 'm')
|
||||
programs.push({
|
||||
title: parseTitle($item),
|
||||
description: parseDescription($item),
|
||||
start,
|
||||
stop
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
return programs
|
||||
},
|
||||
async channels({ lang = 'en' }) {
|
||||
const channels = []
|
||||
const axios = require('axios')
|
||||
const base = 'https://programme.tvb.com'
|
||||
const queues = [base]
|
||||
while (true) {
|
||||
if (queues.length) {
|
||||
const url = queues.shift()
|
||||
const content = await axios
|
||||
.get(url)
|
||||
.then(response => response.data)
|
||||
.catch(console.error)
|
||||
if (content) {
|
||||
const assets = content.match(/assets\/index\.([a-z0-9]+)\.js/g)
|
||||
if (assets) {
|
||||
queues.push(...assets.map(a => base + '/' + a))
|
||||
} else {
|
||||
const metadata = content.match(/e\=(\[(.*?)\])/)
|
||||
if (metadata) {
|
||||
const infos = eval(metadata[1])
|
||||
if (Array.isArray(infos)) {
|
||||
infos
|
||||
.filter(a => a.code.length)
|
||||
.map(a => {
|
||||
channels.push({
|
||||
lang,
|
||||
site_id: a.code,
|
||||
name: lang === 'en' ? a.nameEn : a.name
|
||||
})
|
||||
})
|
||||
break
|
||||
}
|
||||
}
|
||||
}
|
||||
if (queues.length) {
|
||||
continue
|
||||
}
|
||||
}
|
||||
}
|
||||
break
|
||||
}
|
||||
|
||||
return channels
|
||||
}
|
||||
}
|
||||
|
||||
function parseTitle($item) {
|
||||
return $item('.ftit').text().trim()
|
||||
}
|
||||
|
||||
function parseDescription($item) {
|
||||
return $item('.full').text().trim()
|
||||
}
|
||||
|
||||
function parseStart($item, date) {
|
||||
const time = $item('.time').text()
|
||||
|
||||
return dayjs.tz(`${date.format('YYYY-MM-DD')} ${time}`, 'YYYY-MM-DD hh:mmA', 'Asia/Hong_Kong')
|
||||
}
|
||||
|
||||
function parseItems(content) {
|
||||
const $ = cheerio.load(content)
|
||||
|
||||
return $('ul > li.item').toArray()
|
||||
}
|
||||
|
|
|
@ -4,41 +4,60 @@ const path = require('path')
|
|||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
|
||||
dayjs.extend(customParseFormat)
|
||||
dayjs.extend(utc)
|
||||
|
||||
const date = dayjs.utc('2022-11-15', 'YYYY-MM-DD').startOf('d')
|
||||
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.json'))
|
||||
const date = dayjs.utc('2024-12-06', 'YYYY-MM-DD').startOf('d')
|
||||
const channel = {
|
||||
site_id: 'B',
|
||||
xmltv_id: 'J2.hk'
|
||||
site_id: 'J',
|
||||
xmltv_id: 'Jade.hk',
|
||||
lang: 'en'
|
||||
}
|
||||
|
||||
it('can generate valid url', () => {
|
||||
expect(url({ channel, date })).toBe(
|
||||
'https://programme.tvb.com/ajax.php?action=channellist&code=B&date=2022-11-15'
|
||||
const time = 1733491000
|
||||
expect(url({ channel, date, time })).toBe(
|
||||
'https://programme.tvb.com/api/schedule?input_date=20241206&network_code=J&_t=1733491000'
|
||||
)
|
||||
})
|
||||
|
||||
it('can parse response', () => {
|
||||
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.html'))
|
||||
const results = parser({ content, date }).map(p => {
|
||||
it('can parse response (en)', () => {
|
||||
const results = parser({ content, channel, date }).map(p => {
|
||||
p.start = p.start.toJSON()
|
||||
p.stop = p.stop.toJSON()
|
||||
return p
|
||||
})
|
||||
|
||||
expect(results[0]).toMatchObject({
|
||||
start: '2022-11-14T22:00:00.000Z',
|
||||
stop: '2022-11-14T23:00:00.000Z',
|
||||
title: '想見你#3[粵/普][PG]',
|
||||
expect(results.length).toBe(3)
|
||||
expect(results[1]).toMatchObject({
|
||||
start: '2024-12-06T15:55:00.000Z',
|
||||
stop: '2024-12-06T16:55:00.000Z',
|
||||
title: 'Line Walker: Bull Fight#16[Can][PG]',
|
||||
})
|
||||
})
|
||||
|
||||
it('can parse response (zh)', () => {
|
||||
const results = parser({ content, channel: { ...channel, lang: 'zh' }, date }).map(p => {
|
||||
p.start = p.start.toJSON()
|
||||
p.stop = p.stop.toJSON()
|
||||
return p
|
||||
})
|
||||
|
||||
expect(results.length).toBe(3)
|
||||
expect(results[1]).toMatchObject({
|
||||
start: '2024-12-06T15:55:00.000Z',
|
||||
stop: '2024-12-06T16:55:00.000Z',
|
||||
title: '使徒行者3#16[粵][PG]',
|
||||
description:
|
||||
'韻如因父母離婚都不要自己而跑出家門,遇到子維,兩人互吐心事。雨萱順著照片上的唱片行線索,找到一家同名咖啡店,從文磊處得知照片中人是已經過世的韻如,從而推測那個男生也不是詮勝,但她內心反而更加痛苦。'
|
||||
'文鼎從淑梅手上救走大聖爺兒子,大聖爺還恩於歡喜,答允支持九指強。崇聯社定下選舉日子,恰巧是韋傑出獄之日,頭目們顧念舊日恩義,紛紛轉投浩洋。浩洋帶亞希逛傢俬店,憧憬二人未來。亞希向家強承認愛上浩洋,要求退出臥底任務。作榮與歡喜暗中會面,將國際犯罪組織「永恆幫」情報交給他。阿火遭家強出賣,到沐足店搶錢。家強逮住阿火,惟被合星誤會而受拘捕。家強把正植遺下的頸鏈和學生證交還,合星意識到家強已知悉正植身世。',
|
||||
})
|
||||
})
|
||||
|
||||
it('can handle empty guide', () => {
|
||||
const result = parser({
|
||||
content: fs.readFileSync(path.resolve(__dirname, '__data__/no-content.html')),
|
||||
content: '',
|
||||
date
|
||||
})
|
||||
expect(result).toMatchObject([])
|
||||
|
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="programme.tvb.com" lang="en" xmltv_id="" site_id="B">tvb plus</channel>
|
||||
<channel site="programme.tvb.com" lang="en" xmltv_id="Jade.hk" site_id="J">jade</channel>
|
||||
<channel site="programme.tvb.com" lang="en" xmltv_id="Pearl.hk" site_id="P">pearl</channel>
|
||||
<channel site="programme.tvb.com" lang="en" xmltv_id="TVBNewsChannel.hk" site_id="C">tvb news channel</channel>
|
||||
</channels>
|
|
@ -0,0 +1,7 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="" site_id="B">TVB Plus</channel>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="Jade.hk" site_id="J">翡翠台</channel>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="Pearl.hk" site_id="P">明珠台</channel>
|
||||
<channel site="programme.tvb.com" lang="zh" xmltv_id="TVBNewsChannel.hk" site_id="C">無綫新聞台</channel>
|
||||
</channels>
|
|
@ -1,11 +1,33 @@
|
|||
# programme.tvb.com
|
||||
|
||||
https://programme.tvb.com/
|
||||
https://www.programme.tvb.com/
|
||||
|
||||
### Download the guide
|
||||
|
||||
English:
|
||||
|
||||
```sh
|
||||
npm run grab -- --site=programme.tvb.com
|
||||
npm run grab -- --site=programme.tvb.com --lang=en
|
||||
```
|
||||
|
||||
Chinese:
|
||||
|
||||
```sh
|
||||
npm run grab -- --site=programme.tvb.com --lang=zh
|
||||
```
|
||||
|
||||
### Update channel list
|
||||
|
||||
English:
|
||||
|
||||
```sh
|
||||
npm run channels:parse -- --config=sites/programme.tvb.com/programme.tvb.com.config.js --output=sites/programme.tvb.com/programme.tvb.com_en.channels.xml --set=lang:en
|
||||
```
|
||||
|
||||
Chinese:
|
||||
|
||||
```sh
|
||||
npm run channels:parse -- --config=sites/programme.tvb.com/programme.tvb.com.config.js --output=sites/programme.tvb.com/programme.tvb.com_zh.channels.xml --set=lang:zh
|
||||
```
|
||||
|
||||
### Test
|
||||
|
|
1
sites/starhubtvplus.com/__data__/content.json
Normal file
1
sites/starhubtvplus.com/__data__/content.json
Normal file
|
@ -0,0 +1 @@
|
|||
{"build":{"version":"3.1.14-dev132","start":"2024-12-04 09:29:09.289","end":"2024-12-04 09:29:09.314","duration":"25.679016ms","mode":"Release"},"page":{"current":1,"total":1,"items_count":30,"total_items_count":30},"resources":[{"metatype":"Schedule","primary":4597488,"id":"24bb8098-c8a4-464e-bd4f-1ad3f3f6c5e0","platform_id":"GLOBAL_TC0038319955","dataset":"nagra","device":2,"source_id":"GLOBAL_TC0038319955","start":1733246700,"end":1733250000,"runtime":3300,"channel_id":"d258444e-b66b-4cbe-88db-e09f31ab8a1f","channel_platform_id":"GLOBAL_355","ranking":null,"monthly_ranking":null,"weekly_ranking":null,"daily_ranking":null,"rights":{"record":{"capable":true,"type":0,"expiry":0,"forbidden_trickmode":0},"timeshift":{"start_over":false,"watch_again":false,"expiry":0,"forbidden_trickmode":0},"blackout":{"enable":false,"network":"","marketcode":"","message":""}},"rating":"PG13","episode_number":15,"title":"Northern Rexposure","subtitle":"","description":"When Jesse's sister contacts him for help, he, Sarah and Rex head to Northern Ontario and find themselves in the middle of a deadly situation.","short_description":"","serie_title":"Hudson & Rex (Season 5)","casts":[],"producers":[],"directors":[],"ppv":false,"purchasable":false,"definition":"SD","schedule_type":"rerun","content_type":100,"pictures":[{"primary":41731580,"type":5,"url":"https://poster.starhubgo.com/poster/ch511_hudson_rex5.jpg?w=960&h=540"},{"primary":41731593,"type":4,"url":"https://poster.starhubgo.com/poster/ch511_hudson_rex5.jpg?w=341&h=192"}],"locale":"en_US","genres":["Drama"],"revision":1731934823,"support_multicam":false,"schedule_internal_type":0}]}
|
|
@ -4,14 +4,30 @@ https://www.starhubtvplus.com/
|
|||
|
||||
### Download the guide
|
||||
|
||||
English:
|
||||
|
||||
```sh
|
||||
npm run grab -- --site=starhubtvplus.com
|
||||
npm run grab -- --site=starhubtvplus.com --lang=en
|
||||
```
|
||||
|
||||
Chinese:
|
||||
|
||||
```sh
|
||||
npm run grab -- --site=starhubtvplus.com --lang=zh
|
||||
```
|
||||
|
||||
### Update channel list
|
||||
|
||||
English:
|
||||
|
||||
```sh
|
||||
npm run channels:parse -- --config=sites/starhubtvplus.com/starhubtvplus.com.config.js --output=sites/starhubtvplus.com/starhubtvplus.com.channels.xml
|
||||
npm run channels:parse -- --config=sites/starhubtvplus.com/starhubtvplus.com.config.js --output=sites/starhubtvplus.com/starhubtvplus.com_en.channels.xml --set=lang:en
|
||||
```
|
||||
|
||||
Chinese:
|
||||
|
||||
```sh
|
||||
npm run channels:parse -- --config=sites/starhubtvplus.com/starhubtvplus.com.config.js --output=sites/starhubtvplus.com/starhubtvplus.com_zh.channels.xml --set=lang:zh
|
||||
```
|
||||
|
||||
### Test
|
||||
|
|
|
@ -1,136 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="131">SONY MAX</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="135">Vijay TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="205">Hub Sports 5 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="235">MOLA Sports</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="236">MOLA Golf</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="241">FIGHT SPORTS HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="437">HGTV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="709">Bloomberg Quicktake</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="724">France24</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="820">ETTV ASIA HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="823">ONE HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="825">Hub E City HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="921">TestChannel921</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="922">TestChannel922</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="923">TestChannel923</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="924">TestChannel924</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="988">Test channel 988</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="989">Test channel 989</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="993">TestChannel 993</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="994">TestChannel1</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="995">TestChannel995</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="996">TestChannel996</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="997">TestChannel2</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="998">Channel_Test</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ABCAustralia.au" site_id="447">ABC Australia</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AdithyaTV.in" site_id="158">ADITHYA TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ANC.ph" site_id="143">ANC</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AnimaxAsia.sg" site_id="532">Animax HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ArirangTV.kr" site_id="817">Arirang TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Asianet.in" site_id="139">Asianet</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AsianetMovies.in" site_id="140">Asianet Movies</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AstroSensasi.sg" site_id="123">Hub Sensasi HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AstroWarna.my" site_id="118">Astro Warna</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AXN.sg" site_id="511">AXN HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="BBCEarthAsia.uk" site_id="407">BBC Earth HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="BBCLifestyleAsia.uk" site_id="432">BBC Lifestyle HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="BBCNewsAsiaPacific.uk" site_id="701">BBC World News HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="beINSports2.qa" site_id="211">beIN SPORTS 2 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="beINSports3.qa" site_id="214">beIN Sports 3</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="beINSports4.qa" site_id="215">beIN Sports 4 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="beINSports5.qa" site_id="216">beIN Sports 5 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="beINSports.qa" site_id="213">beIN SPORTS HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="BloombergTVAsia.hk" site_id="708">Bloomberg Television HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="BoomerangAsia.sg" site_id="317">Boomerang HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CartoonNetworkAsia.sg" site_id="316">Cartoon Network</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CBeebiesAsia.uk" site_id="303">Cbeebies HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CCM.hk" site_id="869">CCM</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CCTV4Asia.cn" site_id="801">CCTV-4</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CelestialMovies.hk" site_id="868">Celestial Movies HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CGTN.cn" site_id="722">CGTN</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Channel5.sg" site_id="102">Channel 5 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Channel8.sg" site_id="103">Channel 8 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ChannelU.sg" site_id="107">Channel U HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CinemaOneGlobal.ph" site_id="145">Cinema One Global</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CinemaxAsia.sg" site_id="611">Cinemax HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CitraEntertainment.id" site_id="115">Citra Entertainment</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CNA.sg" site_id="106">Channel NewsAsia HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CNBCAsia.sg" site_id="707">CNBC HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CNNInternationalAsiaPacific.hk" site_id="711">CNN HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Colors.in" site_id="128">COLORS</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ColorsTamil.in" site_id="132">COLORS Tamil HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CrimePlusInvestigationAsia.sg" site_id="403">Crime + Investigation HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CTiTV.tw" site_id="827">CTI TV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CuriosityChannel.us" site_id="422">Discovery Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="DragonTVInternational.cn" site_id="832">Dragon TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="DreamWorksChannelAsia.us" site_id="307">DreamWorks Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="DWEnglish.de" site_id="153">DW (Deutsch)</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="EuronewsEnglish.fr" site_id="704">Euronews HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="FashionTVAsia.fr" site_id="443">FashionTV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="FoxNewsChannel.us" site_id="702">Fox News Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="GEM.sg" site_id="814">GEM HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HBOAsia.sg" site_id="601">HBO HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HBOFamilyAsia.sg" site_id="604">HBO Family HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HBOHitsAsia.sg" site_id="605">HBO Hits HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HBOSignatureAsia.sg" site_id="603">HBO Signature HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HistoryAsia.us" site_id="401">HISTORY HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HITS.sg" site_id="519">Hits HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HITSMovies.sg" site_id="512">HITS MOVIES HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubECity.sg" site_id="111">Hub E City HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier1.sg" site_id="221">HubPremier 1</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier2.sg" site_id="222">Hub Premier 2 (HD)</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier3.sg" site_id="223">Hub Premier 3</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier4.sg" site_id="224">Hub Premier 4</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier5.sg" site_id="225">Hub Premier 5</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier6.sg" site_id="226">Hub Premier 6</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier7.sg" site_id="227">Hub Premier 7</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier8.sg" site_id="228">Hub Premier 8</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier9.sg" site_id="229">Hub Premier 9</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier10.sg" site_id="230">Hub Premier 10</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier11.sg" site_id="231">Hub Premier 11</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubSports1.sg" site_id="201">Hub Sports 1 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubSports2.sg" site_id="202">Hub Sports 2 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubSports3.sg" site_id="203">Hub Sports 3 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubSports4.sg" site_id="204">Hub Sports 4 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubVVDrama.sg" site_id="855">Hub VVDrama HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Jade.hk" site_id="838">TVB Jade HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="KalaignarTV.in" site_id="141">Kalaignar TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Karisma.id" site_id="116">Karisma</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="KBSWorld.kr" site_id="815">KBS World HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="KTV.in" site_id="159">KTV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="LifetimeAsia.us" site_id="514">Lifetime HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="NHKWorldJapan.jp" site_id="812">NHK WORLD - JAPAN</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="NHKWorldPremium.jp" site_id="811">NHK World Premium HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="NickelodeonAsia.sg" site_id="314">Nickelodeon HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="NickJrAsia.sg" site_id="304">Nick Jr HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ONE.sg" site_id="124">ONE (Malay)</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ParamountNetwork.sg" site_id="620">Paramount Network</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="PhoenixChineseChannel.hk" site_id="805">Phoenix Chinese Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="PhoenixInfoNewsChannel.hk" site_id="806">Phoenix InfoNews Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="PremierSports1Asia.ie" site_id="207">Premier Sports TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="PreviewChannel.sg" site_id="101">Preview Channel</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ROCKEntertainment.sg" site_id="509">Blue Ant Entertainment HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SEAToday.id" site_id="720">SEA Today</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SkyNewsAustralia.au" site_id="703">Sky News HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SonyEntertainmentTelevision.in" site_id="127">Sony Entertainment Television</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SPOTV2.kr" site_id="210">SPOTV2</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SPOTV.kr" site_id="209">SPOTV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SunMusic.in" site_id="134">Sun Music</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SunTV.in" site_id="133">Sun TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Suria.sg" site_id="104">Suria HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="TheFilipinoChannelAsia.us" site_id="144">The Filipino Channel</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Travelxp.in" site_id="427">Travelxp HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="TV5MondeAsia.fr" site_id="152">TV5MONDE HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="TVBSAsia.tw" site_id="828">TVBS Asia</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="TVBSNews.tw" site_id="808">TVBS-NEWS</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="TVBXingHe.hk" site_id="859">TVB Xing He HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="tvNAsia.hk" site_id="824">tvN HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Vannathirai.sg" site_id="136">Vannathirai</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Vasantham.sg" site_id="105">Vasantham HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ZeeCinema.in" site_id="130">Zee Cinema</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ZeeTamil.in" site_id="138">Zee Tamil HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ZeeThirai.in" site_id="137">Zee Thirai</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ZeeTV.in" site_id="125">Zee TV</channel>
|
||||
</channels>
|
|
@ -1,86 +1,92 @@
|
|||
const axios = require('axios')
|
||||
const dayjs = require('dayjs')
|
||||
|
||||
const APP_KEY = '5ee2ef931de1c4001b2e7fa3_5ee2ec25a0e845001c1783dc'
|
||||
const SESSION_KEY = '01G2QG0N3RWDNCBA1S5MK1MD2K17CE4431A2'
|
||||
const languages = { en: 'en_US', zh: 'zh' }
|
||||
|
||||
module.exports = {
|
||||
site: 'starhubtvplus.com',
|
||||
days: 2,
|
||||
request: {
|
||||
headers: {
|
||||
'x-application-key': APP_KEY,
|
||||
'x-application-session': SESSION_KEY
|
||||
},
|
||||
cache: {
|
||||
ttl: 60 * 60 * 1000 // 1h
|
||||
}
|
||||
url({ date, channel }) {
|
||||
return `https://waf-starhub-metadata-api-p001.ifs.vubiquity.com/v3.1/epg/schedules?locale=${
|
||||
languages[channel.lang]
|
||||
}&locale_default=${
|
||||
languages[channel.lang]
|
||||
}&device=1&in_channel_id=${
|
||||
channel.site_id
|
||||
}>_end=${
|
||||
date.unix()
|
||||
}<_start=${
|
||||
date.add(1, 'd').unix()
|
||||
}&limit=100&page=1`
|
||||
},
|
||||
url: function ({ date }) {
|
||||
const variables = JSON.stringify({
|
||||
category: '',
|
||||
dateFrom: date.format('YYYY-MM-DD'),
|
||||
dateTo: date.add(1, 'd').format('YYYY-MM-DD')
|
||||
})
|
||||
const query =
|
||||
'query webFilteredEpg($category: String, $dateFrom: DateWithoutTime, $dateTo: DateWithoutTime!) { nagraEpg(category: $category) { items { id: tvChannel image name: longName programs: programsByDate(dateFrom: $dateFrom, dateTo: $dateTo) { id title description Categories startTime endTime }}}}'
|
||||
|
||||
const params = `operationName=webFilteredEpg&variables=${encodeURIComponent(
|
||||
variables
|
||||
)}&query=${encodeURIComponent(query)}`
|
||||
|
||||
return `https://api.starhubtvplus.com/epg?${params}`
|
||||
},
|
||||
parser: function ({ content, channel }) {
|
||||
let programs = []
|
||||
const items = parseItems(content, channel)
|
||||
items.forEach(item => {
|
||||
programs.push({
|
||||
title: item.title,
|
||||
description: item.description,
|
||||
category: item.Categories,
|
||||
start: parseStart(item),
|
||||
stop: parseStop(item)
|
||||
})
|
||||
})
|
||||
|
||||
return programs
|
||||
},
|
||||
async channels() {
|
||||
const items = await axios
|
||||
.get(
|
||||
'https://api.starhubtvplus.com/epg?operationName=webFilteredEpg&variables=%7B%22category%22%3A%22%22,%22dateFrom%22%3A%222022-05-10%22,%22dateTo%22%3A%222022-05-11%22%7D&query=query%20webFilteredEpg(%24category%3A%20String)%20%7B%20nagraEpg(category%3A%20%24category)%20%7B%20items%20%7B%20id%3A%20tvChannel%20image%20name%3A%20longName%20%7D%7D%7D',
|
||||
{
|
||||
headers: {
|
||||
'x-application-key': APP_KEY,
|
||||
'x-application-session': SESSION_KEY
|
||||
}
|
||||
async parser({ content, date, channel }) {
|
||||
const programs = []
|
||||
if (content) {
|
||||
let res = JSON.parse(content)
|
||||
while (res) {
|
||||
if (res.resources) {
|
||||
programs.push(...res.resources)
|
||||
}
|
||||
)
|
||||
.then(r => r.data.data.nagraEpg.items)
|
||||
.catch(console.log)
|
||||
if (res.page && res.page.current < res.page.total) {
|
||||
res = await axios
|
||||
.get(module.exports.url({ date, channel }).replace(/page=(\d+)/, `page=${res.page.current + 1}`))
|
||||
.then(r => r.data)
|
||||
.catch(console.error)
|
||||
} else {
|
||||
res = null
|
||||
}
|
||||
}
|
||||
}
|
||||
const season = s => {
|
||||
if (s) {
|
||||
const [ , , n ] = s.match(/(S|Season )(\d+)/) || [null, null, null]
|
||||
if (n) {
|
||||
return parseInt(n)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return items.map(item => ({
|
||||
lang: 'en',
|
||||
site_id: item.id,
|
||||
name: item.name.replace('_DASH', '')
|
||||
return programs.map(item => {
|
||||
return {
|
||||
title: item.title,
|
||||
subTitle: item.serie_title,
|
||||
description: item.description,
|
||||
category: item.genres,
|
||||
image: item.pictures?.map(img => img.url),
|
||||
season: season(item.serie_title),
|
||||
episode: item.episode_number,
|
||||
rating: item.rating,
|
||||
start: dayjs(item.start * 1000),
|
||||
stop: dayjs(item.end * 1000)
|
||||
}
|
||||
})
|
||||
},
|
||||
async channels({ lang = 'en' }) {
|
||||
const resources = []
|
||||
let page = 1
|
||||
while (true) {
|
||||
const items = await axios
|
||||
.get(`https://waf-starhub-metadata-api-p001.ifs.vubiquity.com/v3.1/epg/channels?locale=${
|
||||
languages[lang]
|
||||
}&locale_default=${
|
||||
languages[lang]
|
||||
}&device=1&limit=50&page=${page}`)
|
||||
.then(r => r.data)
|
||||
.catch(console.error)
|
||||
if (items.resources) {
|
||||
resources.push(...items.resources)
|
||||
}
|
||||
if (items.page && page < items.page.total) {
|
||||
page++
|
||||
} else {
|
||||
break
|
||||
}
|
||||
}
|
||||
|
||||
return resources.map(ch => ({
|
||||
lang,
|
||||
site_id: ch.id,
|
||||
name: ch.title
|
||||
}))
|
||||
}
|
||||
}
|
||||
|
||||
function parseStart(item) {
|
||||
return dayjs(item.startTime)
|
||||
}
|
||||
|
||||
function parseStop(item) {
|
||||
return dayjs(item.endTime)
|
||||
}
|
||||
|
||||
function parseItems(content, channel) {
|
||||
const data = JSON.parse(content)
|
||||
if (!data || !data.data || !data.data.nagraEpg || !Array.isArray(data.data.nagraEpg.items))
|
||||
return []
|
||||
const ch = data.data.nagraEpg.items.find(ch => ch.id == channel.site_id)
|
||||
|
||||
return ch && Array.isArray(ch.programs) ? ch.programs : []
|
||||
}
|
||||
|
|
|
@ -2,38 +2,28 @@ const { parser, url, request } = require('./starhubtvplus.com.config.js')
|
|||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
|
||||
dayjs.extend(customParseFormat)
|
||||
dayjs.extend(utc)
|
||||
|
||||
const date = dayjs.utc('2022-05-10', 'YYYY-MM-DD').startOf('d')
|
||||
const date = dayjs.utc('2024-12-04', 'YYYY-MM-DD').startOf('d')
|
||||
const channel = {
|
||||
site_id: '102',
|
||||
xmltv_id: 'Channel5.sg'
|
||||
lang: 'en',
|
||||
site_id: 'd258444e-b66b-4cbe-88db-e09f31ab8a1f',
|
||||
xmltv_id: 'AXN.sg'
|
||||
}
|
||||
|
||||
it('can generate valid url', () => {
|
||||
expect(url({ channel, date })).toBe(
|
||||
'https://api.starhubtvplus.com/epg?operationName=webFilteredEpg&variables=%7B%22category%22%3A%22%22%2C%22dateFrom%22%3A%222022-05-10%22%2C%22dateTo%22%3A%222022-05-11%22%7D&query=query%20webFilteredEpg(%24category%3A%20String%2C%20%24dateFrom%3A%20DateWithoutTime%2C%20%24dateTo%3A%20DateWithoutTime!)%20%7B%20nagraEpg(category%3A%20%24category)%20%7B%20items%20%7B%20id%3A%20tvChannel%20image%20name%3A%20longName%20programs%3A%20programsByDate(dateFrom%3A%20%24dateFrom%2C%20dateTo%3A%20%24dateTo)%20%7B%20id%20title%20description%20Categories%20startTime%20endTime%20%7D%7D%7D%7D'
|
||||
'https://waf-starhub-metadata-api-p001.ifs.vubiquity.com/v3.1/epg/schedules?locale=en_US&locale_default=en_US&device=1&in_channel_id=d258444e-b66b-4cbe-88db-e09f31ab8a1f>_end=1733270400<_start=1733356800&limit=100&page=1'
|
||||
)
|
||||
})
|
||||
|
||||
it('can generate valid request headers', () => {
|
||||
expect(request.headers).toMatchObject({
|
||||
'x-application-key': '5ee2ef931de1c4001b2e7fa3_5ee2ec25a0e845001c1783dc',
|
||||
'x-application-session': '01G2QG0N3RWDNCBA1S5MK1MD2K17CE4431A2'
|
||||
})
|
||||
})
|
||||
|
||||
it('can generate valid cache settings', () => {
|
||||
expect(request.cache).toMatchObject({
|
||||
ttl: 60 * 60 * 1000
|
||||
})
|
||||
})
|
||||
|
||||
it('can parse response', () => {
|
||||
const content =
|
||||
'{"data":{"nagraEpg":{"items":[{"id":102,"name":"Channel 5 HD_DASH","programs":[{"id":"GLOBAL_TC0021650123","title":"Luke Nguyen\'s Vietnam","description":"Luke leaves the hustle and bustle of Hanoi behind for the mystical mountains of Sapa. There, he prepares some black chicken in and amongst the local streets. He cooks buffalo for a salad in the busy Sapa markets, as well as a tofu-and-tomato dish high up in the rice paddy fields with the most spectacular backdrop.","Categories":["Others"],"startTime":1652110200000,"endTime":1652112000000}]}]}}}'
|
||||
const result = parser({ content, channel }).map(p => {
|
||||
it('can parse response', async () => {
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const content = fs.readFileSync(path.join(__dirname, '__data__', 'content.json'))
|
||||
const result = (await parser({ content, date, channel })).map(p => {
|
||||
p.start = p.start.toJSON()
|
||||
p.stop = p.stop.toJSON()
|
||||
return p
|
||||
|
@ -41,20 +31,22 @@ it('can parse response', () => {
|
|||
|
||||
expect(result).toMatchObject([
|
||||
{
|
||||
start: '2022-05-09T15:30:00.000Z',
|
||||
stop: '2022-05-09T16:00:00.000Z',
|
||||
title: "Luke Nguyen's Vietnam",
|
||||
start: '2024-12-03T17:25:00.000Z',
|
||||
stop: '2024-12-03T18:20:00.000Z',
|
||||
title: 'Northern Rexposure',
|
||||
subTitle: 'Hudson & Rex (Season 5)',
|
||||
description:
|
||||
'Luke leaves the hustle and bustle of Hanoi behind for the mystical mountains of Sapa. There, he prepares some black chicken in and amongst the local streets. He cooks buffalo for a salad in the busy Sapa markets, as well as a tofu-and-tomato dish high up in the rice paddy fields with the most spectacular backdrop.',
|
||||
category: ['Others']
|
||||
'When Jesse\'s sister contacts him for help, he, Sarah and Rex head to Northern Ontario and find themselves in the middle of a deadly situation.',
|
||||
category: ['Drama'],
|
||||
image: ['https://poster.starhubgo.com/poster/ch511_hudson_rex5.jpg?w=960&h=540', 'https://poster.starhubgo.com/poster/ch511_hudson_rex5.jpg?w=341&h=192'],
|
||||
season: 5,
|
||||
episode: 15,
|
||||
rating: 'PG13'
|
||||
}
|
||||
])
|
||||
})
|
||||
|
||||
it('can handle empty guide', () => {
|
||||
const result = parser({
|
||||
content:
|
||||
'{"errors":[{"code":"A9999","message":"Syntax, request headers or server error","extendedLogging":{"message":"Cannot read property \'operation\' of undefined"}}]}'
|
||||
})
|
||||
it('can handle empty guide', async () => {
|
||||
const result = await parser({ content: '' })
|
||||
expect(result).toMatchObject([])
|
||||
})
|
||||
|
|
119
sites/starhubtvplus.com/starhubtvplus.com_en.channels.xml
Normal file
119
sites/starhubtvplus.com/starhubtvplus.com_en.channels.xml
Normal file
|
@ -0,0 +1,119 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="7c0ee1eb-5f74-4f5a-a338-69eb125badb4">ETTV ASIA HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="210ba103-0d19-4b26-bb9f-36d531d7471f">TestChannel 996</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="740ad097-ae3d-4a16-9e67-69e308509b9a">ONE (Malay)</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="06830f4b-1684-42d1-a29a-616b2e34b0ae">Bloomberg Originals</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="ac52e93d-814b-40cb-9a3f-688765341bda">Test 998</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="ace578ac-0996-4941-877c-58abe2ff3851">TestChannel2</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="baa219e7-6b9a-4b1c-aba3-c77f26b7cf49">TestChannel 993</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="c290bc2f-bff6-485e-ad81-cba439754d16">TestChannel1</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="" site_id="e21e78cb-6be3-4ec6-888f-39d3d365710c">TestChannel 995</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ABCAustralia.au" site_id="3c3228b3-3388-4aa1-8535-6f2ed17432af">ABC Australia HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AdithyaTV.in" site_id="072f2bcf-99f1-48fe-8806-7a217e4bb372">ADITHYA TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ANC.ph" site_id="e070be44-cd6f-4fab-b34d-948a979d5564">ANC</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AnimaxAsia.sg" site_id="71278e7f-bdd5-43ac-b3ca-01d6fad180f5">Animax HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ArirangTV.kr" site_id="73d6b697-f5f1-4a04-a788-ece67c31ed1c">Arirang TV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Asianet.in" site_id="6f6c5d20-18b3-4023-b505-726b9c36b6e9">Asianet</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AsianetMovies.in" site_id="30970c17-8498-4c05-9174-a49c0fc33fad">Asianet Movies</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AstroSensasi.sg" site_id="68bbd5d8-379d-4646-a1e3-e204cc9c2f54">Astro Sensasi HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AstroWarna.my" site_id="9bf114df-42db-4815-9b73-efa05d0b9f94">Astro Warna HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="AXN.sg" site_id="d258444e-b66b-4cbe-88db-e09f31ab8a1f">AXN HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="BBCEarthAsia.uk" site_id="6269ba33-cee1-4dc9-8728-2b82dc73e252">BBC Earth HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="BBCLifestyleAsia.uk" site_id="85611254-47a9-4f7c-9469-a4ee8b9f65b1">BBC Lifestyle</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="BBCNewsAsiaPacific.uk" site_id="8a28afbc-74bb-4c02-9bba-eb623358a9b8">BBC World News HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="beINSports2.qa" site_id="dceea37a-621c-4ba5-a818-68ec6154e538">beIN Sports 2 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="beINSports3.qa" site_id="df4507d8-292d-4036-b14e-b8343360dcaa">beIN Sports 3</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="beINSports4.qa" site_id="6c1be2bc-47c4-45b5-b027-fce49322f34c">beIN Sports 4</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="beINSports5.qa" site_id="354def1b-701e-4703-a279-5ef4204847a1">beIN Sports 5</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="beINSports.qa" site_id="12efa598-4bae-4d64-afc0-a4e7340de74e">beIN Sports HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="BloombergTVAsia.hk" site_id="c2c8034f-2897-4944-afb6-bdfcb6e9a536">Bloomberg Television HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Cartoonito.uk" site_id="9fc55c89-3eb4-4516-a5c4-c6193eb71f57">Cartoonito HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CartoonNetworkAsia.sg" site_id="54f4de25-3575-44c4-92dd-b4a1c3c5b088">Cartoon Network</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CBeebiesAsia.uk" site_id="30a6b23c-0657-4e8f-b26b-de9273e394d7">Cbeebies HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CCM.hk" site_id="ef624c07-6e36-4619-87fd-138a443aac1a">CCM</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CCTV4Asia.cn" site_id="e774692b-b038-4615-9148-d9cbbdbebb5b">CCTV-4</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CelestialMovies.hk" site_id="705e08d5-dec6-4da2-858a-fd29e6b884d2">Celestial Movies HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CGTN.cn" site_id="77da4ed7-09ed-455a-9c09-8d75000fe942">CGTN</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CinemaOneGlobal.ph" site_id="64ddc417-c35c-4b95-84ca-67b0d6c77265">Cinema One Global</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CinemaxAsia.sg" site_id="fd510962-c830-490f-be97-0ecadf2bcc11">Cinemax HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CitraEntertainment.id" site_id="6a59cb8b-182d-4038-b315-cf35cf7c5ac7">Citra Entertainment</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CNBCAsia.sg" site_id="f0de7c83-f946-492e-b02b-960b65928ec9">CNBC HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CNNInternationalAsiaPacific.hk" site_id="93114f35-0f46-4404-98c1-07019a2d2c15">CNN HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Colors.in" site_id="895ebe38-5cfe-43da-9847-a7088cc3aca7">COLORS</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ColorsTamil.in" site_id="61fcfb0b-514a-47a0-8400-ed8b9221188c">COLORS Tamil HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CrimePlusInvestigationAsia.sg" site_id="0610cb3d-8521-44a1-8d90-7029ac428e8c">Crime + Investigation HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="CTiTV.tw" site_id="7cad02e2-086a-49c8-bf6a-737d1f30c680">CTI TV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="DiscoveryChannelSoutheastAsia.sg" site_id="21bf30fb-2800-4761-aee8-452bdb68aff6">Discovery HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="DragonTVInternational.cn" site_id="57f9281b-3c13-456c-aa52-a1e410706933">Dragon TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="DreamWorksChannelAsia.us" site_id="f9f14a80-9556-4ef8-af7c-5f13279dd83c">DreamWorks Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="DWEnglish.de" site_id="4c646df4-59ab-4e03-9de8-d36a95127266">DW English HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="EuronewsEnglish.fr" site_id="1b8e6f65-e3f0-4369-bf33-c56212eb269e">Euronews HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="FashionTVAsia.fr" site_id="9e2f39ab-95ba-4031-bfeb-6b9b41491b08">FashionTV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="FightSports.us" site_id="71da87e9-5d3f-4544-8b6f-e9a374e05bc7">FIGHT SPORTS HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="FoxNewsChannel.us" site_id="628ba4e0-4239-46c3-a5a2-b15273c82009">Fox News Channel</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="France24English.fr" site_id="9abfbba5-24c8-4e3f-8e00-f75902c7675b">France24</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HBOAsia.sg" site_id="f1e89c2d-232c-4204-8cf1-e3107ad6b8e8">HBO HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HBOFamilyAsia.sg" site_id="a162afe8-8990-4d43-8c9a-c29d844ba2fb">HBO Family HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HBOHitsAsia.sg" site_id="d27cd0f4-85c1-4c08-91cd-808643e7cec9">HBO Hits HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HBOSignatureAsia.sg" site_id="21184422-bbcd-4641-aeb6-fef337b5cc7a">HBO Signature HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HGTVAsia.us" site_id="2cd14827-0816-400d-b868-62985ec8b627">HGTV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HistoryAsia.us" site_id="5b36348e-1669-4883-9821-6b336cff0d58">HISTORY HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HITS.sg" site_id="05384f9f-6241-4712-80ab-2c3f2d8ac7d5">Hits HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HITSMovies.sg" site_id="cef88e25-64c6-402e-a6d5-36688708c40f">HITS MOVIES HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubECity.sg" site_id="dc1af464-7877-46dd-95f0-f81ecd1e3677">Hub E City HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubECity.sg" site_id="dfb315cf-fbda-479a-87f0-ab35e65dd7aa">Hub E City HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier1.sg" site_id="99ee7b2d-1a7d-4fb1-8fbe-7903e028a87b">Hub Premier 1</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier2.sg" site_id="fbb0e7b8-649b-4c98-9bbe-713971282d8c">Hub Premier 2 (HD)</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier3.sg" site_id="2d16335e-aea6-47ab-b688-b3c694a27cf6">Hub Premier 3</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier4.sg" site_id="aab336e8-ef09-4e27-91d4-81c35b802a0a">Hub Premier 4</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier5.sg" site_id="37e180c8-9f91-41b2-80fe-237b8eba0d8b">Hub Premier 5</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier6.sg" site_id="ee7f8151-6ddb-4f5a-b651-aa19597ab57b">Hub Premier 6</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier7.sg" site_id="9b01c864-5bcc-46e6-ba8e-3ba6c33ca8fb">Hub Premier 7</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubPremier8.sg" site_id="578cfccf-634d-4beb-a167-741cb91a068e">Hub Premier 8</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubSports1.sg" site_id="6e5e72ef-9fa6-4007-9537-74e7d08f51c4">Hub Sports 1 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubSports2.sg" site_id="3c292157-4cf2-48bf-9608-c0ef8ab79cc5">Hub Sports 2 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubSports3.sg" site_id="9511afb0-2af8-4a1a-9d54-1395924edf91">Hub Sports 3 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubSports4.sg" site_id="1944dfe8-b8e6-46c2-a700-78d5b680e2ac">Hub Sports 4 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubSports5.sg" site_id="eac9d5cf-9291-4900-adbd-b81551cbeeb3">Hub Sports 5 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubSports6.sg" site_id="c691a121-f6a9-450d-bd1c-cb41107b65b6">Hub Sports 6</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubSports7.sg" site_id="b4ff91f4-7aa6-4e06-ab58-d3932bcbb496">Hub Sports 7</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="HubVVDrama.sg" site_id="ce5ca9b4-9dca-412f-ac30-252144c124e3">Hub VVDrama</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Jade.hk" site_id="5bc5b18c-b12c-462f-b49a-8056b74d72a3">TVB Jade HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="KalaignarTV.in" site_id="d99214cd-fcdf-4613-8106-55e248d3b608">Kalaignar TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Karisma.id" site_id="c5693796-e108-4a13-9319-eb793bb408c3">Karisma</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="KBSWorld.kr" site_id="c993aa99-5dd3-446e-9e55-62393353058a">KBS World HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="KTV.in" site_id="36dae5f2-147d-4aab-a7bd-e9b7d9501734">KTV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="LifetimeAsia.us" site_id="e2cf7307-0e1d-4dba-a94f-5a0fac85b262">Lifetime HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="NHKWorldJapan.jp" site_id="263c311c-4b74-4fc0-bb7b-7762cce99a8a">NHK WORLD - JAPAN HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="NHKWorldPremium.jp" site_id="64178eae-3ca3-4048-99e4-fce9556b2812">NHK World Premium HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="NickelodeonAsia.sg" site_id="c25a38ab-772d-41e7-b0eb-83021f1d309c">Nickelodeon Asia HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="NickJrAsia.sg" site_id="4db9b282-0e8d-456e-ba83-89b4eaf173d7">Nick Jr</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ONE.sg" site_id="4431c255-e2a9-45db-b43b-27cc19c14cb9">ONE HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="PhoenixChineseChannel.hk" site_id="e3141ae3-758b-4393-bd9c-9260babbca00">Phoenix Chinese Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="PhoenixInfoNewsChannel.hk" site_id="dca44244-ee28-4372-b502-888c8795624b">Phoenix InfoNews Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="PremierSports1Asia.ie" site_id="0ec5072f-b6dc-4676-a683-c32c5db2c3a1">Premier Sports</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="PreviewChannel.sg" site_id="9c7414bb-cd6c-4cdf-b019-1c85b7511d32">Preview Channel</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ROCKEntertainment.sg" site_id="f83d356b-7169-48c9-a411-b5e05511a462">ROCK Entertainment</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SEAToday.id" site_id="df762cf1-6b2b-4e0c-9e23-427efde82020">SEA Today</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SkyNewsAustralia.au" site_id="206f755c-f417-4eb4-9631-ed21ae11f2e8">Sky News HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SonyEntertainmentTelevision.in" site_id="1ed77994-5ab6-4d38-88f2-d662f3cfe5b0">Sony Entertainment Television</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SonyMaxSingapore.sg" site_id="dff489d0-abee-4b61-a684-e283ba799ce6">SONY MAX</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SPOTV2.kr" site_id="ae1685eb-3ef0-4d14-9c89-8955bcc2bc02">SPOTV2</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SPOTV.kr" site_id="62954bd1-435e-4929-a78a-90c12c99e3eb">SPOTV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SunMusic.in" site_id="082041a8-9ba1-41ab-9e01-6741f01f4e34">Sun Music</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="SunTV.in" site_id="dd211710-85e9-45f6-b3c8-482dbda2d261">Sun TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="TheFilipinoChannelAsia.us" site_id="265c0f76-c798-496d-aca1-f540a70952ec">The Filipino Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Travelxp.in" site_id="14a563d5-d406-4094-907e-ec452c658de9">Travelxp HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="TV5MondeAsia.fr" site_id="2cea0112-a03d-4fa1-a4c2-276da4d3c908">TV5MONDE HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="TVBSAsia.tw" site_id="9e7d5a33-39dd-4e66-809f-c6099dc81d26">TVBS Asia</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="TVBSNews.tw" site_id="b4cdf669-f16c-4f74-ad4c-accde9fc77d3">TVBS-NEWS</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="TVBXingHe.hk" site_id="5f50648a-3b0f-4d13-b0ac-056e722a647a">TVB Xing He</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="tvNAsia.hk" site_id="b8953e43-4fea-4a1a-833c-06de1fcb5db7">tvN HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="Vannathirai.sg" site_id="207a516d-2dbc-49f9-8d98-32d31bd89d3a">Vannathirai</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="VijayTVAsia.in" site_id="c4162998-26a4-4296-ae78-34d56086e604">Vijay TV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ZeeCinema.in" site_id="68c4d3c4-93d9-4cb3-ba14-8918142bfbdc">Zee Cinema</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ZeeTamil.in" site_id="f8ae363f-51f1-4063-808b-406947018b51">Zee Tamil</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ZeeThirai.in" site_id="94ec2a65-eae1-4cdc-95a6-1ed67b17f4e4">Zee Thirai</channel>
|
||||
<channel site="starhubtvplus.com" lang="en" xmltv_id="ZeeTV.in" site_id="8ade3211-6836-4e95-80f7-5aca573b8b75">Zee TV</channel>
|
||||
</channels>
|
119
sites/starhubtvplus.com/starhubtvplus.com_zh.channels.xml
Normal file
119
sites/starhubtvplus.com/starhubtvplus.com_zh.channels.xml
Normal file
|
@ -0,0 +1,119 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="" site_id="7c0ee1eb-5f74-4f5a-a338-69eb125badb4">ETTV ASIA HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="" site_id="210ba103-0d19-4b26-bb9f-36d531d7471f">TestChannel 996</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="" site_id="740ad097-ae3d-4a16-9e67-69e308509b9a">ONE (Malay)</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="" site_id="06830f4b-1684-42d1-a29a-616b2e34b0ae">Bloomberg Originals</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="" site_id="ac52e93d-814b-40cb-9a3f-688765341bda">Test 998</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="" site_id="ace578ac-0996-4941-877c-58abe2ff3851">TestChannel2</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="" site_id="baa219e7-6b9a-4b1c-aba3-c77f26b7cf49">TestChannel 993</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="" site_id="c290bc2f-bff6-485e-ad81-cba439754d16">TestChannel1</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="" site_id="e21e78cb-6be3-4ec6-888f-39d3d365710c">TestChannel 995</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="ABCAustralia.au" site_id="3c3228b3-3388-4aa1-8535-6f2ed17432af">ABC Australia HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="AdithyaTV.in" site_id="072f2bcf-99f1-48fe-8806-7a217e4bb372">ADITHYA TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="ANC.ph" site_id="e070be44-cd6f-4fab-b34d-948a979d5564">ANC</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="AnimaxAsia.sg" site_id="71278e7f-bdd5-43ac-b3ca-01d6fad180f5">Animax HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="ArirangTV.kr" site_id="73d6b697-f5f1-4a04-a788-ece67c31ed1c">Arirang TV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="Asianet.in" site_id="6f6c5d20-18b3-4023-b505-726b9c36b6e9">Asianet</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="AsianetMovies.in" site_id="30970c17-8498-4c05-9174-a49c0fc33fad">Asianet Movies</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="AstroSensasi.sg" site_id="68bbd5d8-379d-4646-a1e3-e204cc9c2f54">Astro Sensasi HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="AstroWarna.my" site_id="9bf114df-42db-4815-9b73-efa05d0b9f94">Astro Warna HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="AXN.sg" site_id="d258444e-b66b-4cbe-88db-e09f31ab8a1f">AXN HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="BBCEarthAsia.uk" site_id="6269ba33-cee1-4dc9-8728-2b82dc73e252">BBC Earth HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="BBCLifestyleAsia.uk" site_id="85611254-47a9-4f7c-9469-a4ee8b9f65b1">BBC Lifestyle</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="BBCNewsAsiaPacific.uk" site_id="8a28afbc-74bb-4c02-9bba-eb623358a9b8">BBC World News HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="beINSports2.qa" site_id="dceea37a-621c-4ba5-a818-68ec6154e538">beIN Sports 2 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="beINSports3.qa" site_id="df4507d8-292d-4036-b14e-b8343360dcaa">beIN Sports 3</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="beINSports4.qa" site_id="6c1be2bc-47c4-45b5-b027-fce49322f34c">beIN Sports 4</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="beINSports5.qa" site_id="354def1b-701e-4703-a279-5ef4204847a1">beIN Sports 5</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="beINSports.qa" site_id="12efa598-4bae-4d64-afc0-a4e7340de74e">beIN Sports HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="BloombergTVAsia.hk" site_id="c2c8034f-2897-4944-afb6-bdfcb6e9a536">Bloomberg Television HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="Cartoonito.uk" site_id="9fc55c89-3eb4-4516-a5c4-c6193eb71f57">Cartoonito HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CartoonNetworkAsia.sg" site_id="54f4de25-3575-44c4-92dd-b4a1c3c5b088">Cartoon Network</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CBeebiesAsia.uk" site_id="30a6b23c-0657-4e8f-b26b-de9273e394d7">Cbeebies HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CCM.hk" site_id="ef624c07-6e36-4619-87fd-138a443aac1a">CCM</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CCTV4Asia.cn" site_id="e774692b-b038-4615-9148-d9cbbdbebb5b">CCTV-4</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CelestialMovies.hk" site_id="705e08d5-dec6-4da2-858a-fd29e6b884d2">Celestial Movies HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CGTN.cn" site_id="77da4ed7-09ed-455a-9c09-8d75000fe942">CGTN</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CinemaOneGlobal.ph" site_id="64ddc417-c35c-4b95-84ca-67b0d6c77265">Cinema One Global</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CinemaxAsia.sg" site_id="fd510962-c830-490f-be97-0ecadf2bcc11">Cinemax HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CitraEntertainment.id" site_id="6a59cb8b-182d-4038-b315-cf35cf7c5ac7">Citra Entertainment</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CNBCAsia.sg" site_id="f0de7c83-f946-492e-b02b-960b65928ec9">CNBC HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CNNInternationalAsiaPacific.hk" site_id="93114f35-0f46-4404-98c1-07019a2d2c15">CNN HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="Colors.in" site_id="895ebe38-5cfe-43da-9847-a7088cc3aca7">COLORS</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="ColorsTamil.in" site_id="61fcfb0b-514a-47a0-8400-ed8b9221188c">COLORS Tamil HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CrimePlusInvestigationAsia.sg" site_id="0610cb3d-8521-44a1-8d90-7029ac428e8c">Crime + Investigation HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="CTiTV.tw" site_id="7cad02e2-086a-49c8-bf6a-737d1f30c680">CTI TV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="DiscoveryChannelSoutheastAsia.sg" site_id="21bf30fb-2800-4761-aee8-452bdb68aff6">Discovery HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="DragonTVInternational.cn" site_id="57f9281b-3c13-456c-aa52-a1e410706933">Dragon TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="DreamWorksChannelAsia.us" site_id="f9f14a80-9556-4ef8-af7c-5f13279dd83c">DreamWorks Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="DWEnglish.de" site_id="4c646df4-59ab-4e03-9de8-d36a95127266">DW English HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="EuronewsEnglish.fr" site_id="1b8e6f65-e3f0-4369-bf33-c56212eb269e">Euronews HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="FashionTVAsia.fr" site_id="9e2f39ab-95ba-4031-bfeb-6b9b41491b08">FashionTV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="FightSports.us" site_id="71da87e9-5d3f-4544-8b6f-e9a374e05bc7">FIGHT SPORTS HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="FoxNewsChannel.us" site_id="628ba4e0-4239-46c3-a5a2-b15273c82009">Fox News Channel</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="France24English.fr" site_id="9abfbba5-24c8-4e3f-8e00-f75902c7675b">France24</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HBOAsia.sg" site_id="f1e89c2d-232c-4204-8cf1-e3107ad6b8e8">HBO HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HBOFamilyAsia.sg" site_id="a162afe8-8990-4d43-8c9a-c29d844ba2fb">HBO Family HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HBOHitsAsia.sg" site_id="d27cd0f4-85c1-4c08-91cd-808643e7cec9">HBO Hits HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HBOSignatureAsia.sg" site_id="21184422-bbcd-4641-aeb6-fef337b5cc7a">HBO Signature HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HGTVAsia.us" site_id="2cd14827-0816-400d-b868-62985ec8b627">HGTV</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HistoryAsia.us" site_id="5b36348e-1669-4883-9821-6b336cff0d58">HISTORY HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HITS.sg" site_id="05384f9f-6241-4712-80ab-2c3f2d8ac7d5">Hits HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HITSMovies.sg" site_id="cef88e25-64c6-402e-a6d5-36688708c40f">HITS MOVIES HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubECity.sg" site_id="dc1af464-7877-46dd-95f0-f81ecd1e3677">Hub E City HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubECity.sg" site_id="dfb315cf-fbda-479a-87f0-ab35e65dd7aa">Hub E City HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubPremier1.sg" site_id="99ee7b2d-1a7d-4fb1-8fbe-7903e028a87b">Hub Premier 1</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubPremier2.sg" site_id="fbb0e7b8-649b-4c98-9bbe-713971282d8c">Hub Premier 2 (HD)</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubPremier3.sg" site_id="2d16335e-aea6-47ab-b688-b3c694a27cf6">Hub Premier 3</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubPremier4.sg" site_id="aab336e8-ef09-4e27-91d4-81c35b802a0a">Hub Premier 4</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubPremier5.sg" site_id="37e180c8-9f91-41b2-80fe-237b8eba0d8b">Hub Premier 5</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubPremier6.sg" site_id="ee7f8151-6ddb-4f5a-b651-aa19597ab57b">Hub Premier 6</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubPremier7.sg" site_id="9b01c864-5bcc-46e6-ba8e-3ba6c33ca8fb">Hub Premier 7</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubPremier8.sg" site_id="578cfccf-634d-4beb-a167-741cb91a068e">Hub Premier 8</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubSports1.sg" site_id="6e5e72ef-9fa6-4007-9537-74e7d08f51c4">Hub Sports 1 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubSports2.sg" site_id="3c292157-4cf2-48bf-9608-c0ef8ab79cc5">Hub Sports 2 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubSports3.sg" site_id="9511afb0-2af8-4a1a-9d54-1395924edf91">Hub Sports 3 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubSports4.sg" site_id="1944dfe8-b8e6-46c2-a700-78d5b680e2ac">Hub Sports 4 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubSports5.sg" site_id="eac9d5cf-9291-4900-adbd-b81551cbeeb3">Hub Sports 5 HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubSports6.sg" site_id="c691a121-f6a9-450d-bd1c-cb41107b65b6">Hub Sports 6</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubSports7.sg" site_id="b4ff91f4-7aa6-4e06-ab58-d3932bcbb496">Hub Sports 7</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="HubVVDrama.sg" site_id="ce5ca9b4-9dca-412f-ac30-252144c124e3">Hub VVDrama</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="Jade.hk" site_id="5bc5b18c-b12c-462f-b49a-8056b74d72a3">TVB Jade HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="KalaignarTV.in" site_id="d99214cd-fcdf-4613-8106-55e248d3b608">Kalaignar TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="Karisma.id" site_id="c5693796-e108-4a13-9319-eb793bb408c3">Karisma</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="KBSWorld.kr" site_id="c993aa99-5dd3-446e-9e55-62393353058a">KBS World HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="KTV.in" site_id="36dae5f2-147d-4aab-a7bd-e9b7d9501734">KTV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="LifetimeAsia.us" site_id="e2cf7307-0e1d-4dba-a94f-5a0fac85b262">Lifetime HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="NHKWorldJapan.jp" site_id="263c311c-4b74-4fc0-bb7b-7762cce99a8a">NHK WORLD - JAPAN HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="NHKWorldPremium.jp" site_id="64178eae-3ca3-4048-99e4-fce9556b2812">NHK World Premium HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="NickelodeonAsia.sg" site_id="c25a38ab-772d-41e7-b0eb-83021f1d309c">Nickelodeon Asia HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="NickJrAsia.sg" site_id="4db9b282-0e8d-456e-ba83-89b4eaf173d7">Nick Jr</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="ONE.sg" site_id="4431c255-e2a9-45db-b43b-27cc19c14cb9">ONE HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="PhoenixChineseChannel.hk" site_id="e3141ae3-758b-4393-bd9c-9260babbca00">Phoenix Chinese Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="PhoenixInfoNewsChannel.hk" site_id="dca44244-ee28-4372-b502-888c8795624b">Phoenix InfoNews Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="PremierSports1Asia.ie" site_id="0ec5072f-b6dc-4676-a683-c32c5db2c3a1">Premier Sports</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="PreviewChannel.sg" site_id="9c7414bb-cd6c-4cdf-b019-1c85b7511d32">Preview Channel</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="ROCKEntertainment.sg" site_id="f83d356b-7169-48c9-a411-b5e05511a462">ROCK Entertainment</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="SEAToday.id" site_id="df762cf1-6b2b-4e0c-9e23-427efde82020">SEA Today</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="SkyNewsAustralia.au" site_id="206f755c-f417-4eb4-9631-ed21ae11f2e8">Sky News HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="SonyEntertainmentTelevision.in" site_id="1ed77994-5ab6-4d38-88f2-d662f3cfe5b0">Sony Entertainment Television</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="SonyMaxSingapore.sg" site_id="dff489d0-abee-4b61-a684-e283ba799ce6">SONY MAX</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="SPOTV2.kr" site_id="ae1685eb-3ef0-4d14-9c89-8955bcc2bc02">SPOTV2</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="SPOTV.kr" site_id="62954bd1-435e-4929-a78a-90c12c99e3eb">SPOTV</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="SunMusic.in" site_id="082041a8-9ba1-41ab-9e01-6741f01f4e34">Sun Music</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="SunTV.in" site_id="dd211710-85e9-45f6-b3c8-482dbda2d261">Sun TV</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="TheFilipinoChannelAsia.us" site_id="265c0f76-c798-496d-aca1-f540a70952ec">The Filipino Channel HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="Travelxp.in" site_id="14a563d5-d406-4094-907e-ec452c658de9">Travelxp HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="TV5MondeAsia.fr" site_id="2cea0112-a03d-4fa1-a4c2-276da4d3c908">TV5MONDE HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="TVBSAsia.tw" site_id="9e7d5a33-39dd-4e66-809f-c6099dc81d26">TVBS Asia</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="TVBSNews.tw" site_id="b4cdf669-f16c-4f74-ad4c-accde9fc77d3">TVBS-NEWS</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="TVBXingHe.hk" site_id="5f50648a-3b0f-4d13-b0ac-056e722a647a">TVB Xing He</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="tvNAsia.hk" site_id="b8953e43-4fea-4a1a-833c-06de1fcb5db7">tvN HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="Vannathirai.sg" site_id="207a516d-2dbc-49f9-8d98-32d31bd89d3a">Vannathirai</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="VijayTVAsia.in" site_id="c4162998-26a4-4296-ae78-34d56086e604">Vijay TV HD</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="ZeeCinema.in" site_id="68c4d3c4-93d9-4cb3-ba14-8918142bfbdc">Zee Cinema</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="ZeeTamil.in" site_id="f8ae363f-51f1-4063-808b-406947018b51">Zee Tamil</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="ZeeThirai.in" site_id="94ec2a65-eae1-4cdc-95a6-1ed67b17f4e4">Zee Thirai</channel>
|
||||
<channel site="starhubtvplus.com" lang="zh" xmltv_id="ZeeTV.in" site_id="8ade3211-6836-4e95-80f7-5aca573b8b75">Zee TV</channel>
|
||||
</channels>
|
1
sites/tv.nu/__data__/content.json
Normal file
1
sites/tv.nu/__data__/content.json
Normal file
|
@ -0,0 +1 @@
|
|||
{"meta":{"status":200},"data":{"id":145,"name":"3sat","slug":"3sat","themedLogo":{"light":{"url":"https://new.static.tv.nu/19402383","isFallback":false},"dark":{"url":"https://new.static.tv.nu/59995595","isFallback":true}},"broadcasts":[{"type":"broadcast","id":"1TirWo-2l-dxVS","programId":"28689","isPlay":false,"isMovie":false,"isSeries":false,"isRerun":false,"isRecurring":false,"isLive":false,"title":"Natur im Garten","description":"Der Gartenbuchautor Karl Ploberger gibt in der Sendung Tipps und Tricks zur Gartenpflege.","year":2024,"genreNames":[],"genres":[{"name":"Konsument","slug":"konsument"},{"name":"Underhållning","slug":"underhallning"},{"name":"Trädgård","slug":"tradgard"}],"genreGroupNames":[],"genreGroups":[],"playProviders":[],"broadcast":{"id":"1TirWo-2l-dxVS","startTime":1733226600000,"endTime":1733228100000,"type":"broadcast"},"episodeNumber":9,"seasonNumber":29,"isIntermission":false}]}}
|
1
sites/tv.nu/__data__/no_content.json
Normal file
1
sites/tv.nu/__data__/no_content.json
Normal file
|
@ -0,0 +1 @@
|
|||
{"meta":{"status":200},"data":{"broadcasts":[]}}
|
|
@ -1,10 +1,83 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="dk4.dk" site_id="dk4">DK4</channel>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="dk4HD.dk" site_id="dk4-hd">DK4 HD</channel>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="DR1.dk" site_id="dr1">DR1</channel>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="Kanal4.dk" site_id="kanal-4">Kanal 4</channel>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="Kanal5.dk" site_id="kanal-5-danmark">Kanal 5 Danmark</channel>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="TV3.dk" site_id="tv3-danmark">TV3 Danmark</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="3sat.de" site_id="3sat">3sat</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="arte.fr" site_id="arte">ARTE</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="DasErste.de" site_id="das-erste">Das Erste</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="DMAX.de" site_id="dmax">DMAX</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="eSports1.de" site_id="esportsone">eSportsone</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="ProSieben.de" site_id="prosieben">ProSieben</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="RTL.de" site_id="rtl">RTL</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="RTLZwei.de" site_id="rtlzwei">RTLZWEI</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="VOX.de" site_id="vox">VOX</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="ZDF.de" site_id="zdf">ZDF</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="AdultChannel.uk" site_id="adult-channel">Adult Channel</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="AlJazeeraEnglish.qa" site_id="al-jazeera-english">Al Jazeera English</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="BBCEarthNordic.uk" site_id="bbc-earth">BBC Earth</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="BBCNordic.uk" site_id="bbc-nordic">BBC Nordic</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="BrazzersTVEurope.us" site_id="brazzers-tv-plus">BraZZers TV Plus</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="CGTNEurope.cn" site_id="china-global-television-network">China Global Television Network</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="CNBCEurope.uk" site_id="cnbc">CNBC</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="CNNInternationalEurope.us" site_id="cnn-international">CNN International</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="CuriosityChannel.us" site_id="curiositystream">CuriosityStream</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="EEurope.nl" site_id="e">E!</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="EuronewsEnglish.fr" site_id="euro-news">Euro News</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="ExtremeSportsChannel.nl" site_id="extreme-sports-channel">Extreme Sports Channel</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="FightSports.us" site_id="fight-sports">Fight Sports</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="France24EnglishHD.fr" site_id="france-24-english-hd">France 24 English HD</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="FUELTV.at" site_id="fuel-tv">FUEL TV</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="GINXEsportsTV.uk" site_id="ginx-esports-tv">GINX eSports TV</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="GODTV.uk" site_id="god-tv">GOD TV</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="HighTV3D.us" site_id="high-tv-3d">High TV 3D</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="HustlerHD.nl" site_id="hustler-tv">Hustler TV</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="LoveNature4K.ca" site_id="love-nature-4k-uhd">Love Nature 4K UHD</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="MezzoLive.fr" site_id="mezzo-live">Mezzo Live</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="MTV90s.uk" site_id="mtv-90s">MTV 90s</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="MTVHitsEurope.uk" site_id="mtv-hits">MTV Hits</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="MTVLive.uk" site_id="mtv-live-hd">MTV Live HD</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="NauticalChannel.it" site_id="nautical-channel">Nautical Channel</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="NFLNetwork.us" site_id="nfl-network">NFL Network</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="NHKWorldJapan.jp" site_id="nhk-world-europe">NHK World Europe</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="OUTtv.nl" site_id="outtv">OUTtv</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="PenthouseHD1.us" site_id="penthouse-hd-1">Penthouse HD 1</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="PenthouseHD2.us" site_id="penthouse-hd-2">Penthouse HD 2</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="PlayboyTVEurope.us" site_id="playboy-tv-europe">Playboy TV Europe</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="SkyHistory.uk" site_id="history-uk">History (UK)</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="SkyNewsInternational.uk" site_id="sky-news">Sky News</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="StingrayClassica.ca" site_id="stingray-classica">Stingray Classica</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="StingrayDJAZZ.ca" site_id="djazz-hd">Djazz HD</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="TraceUrban.fr" site_id="trace-urban-hd">Trace Urban HD</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="WildTV.ca" site_id="wild-tv-hd">WILD TV HD</channel>
|
||||
<channel site="tv.nu" lang="es" xmltv_id="TVChile.cl" site_id="tv-chile">TV Chile</channel>
|
||||
<channel site="tv.nu" lang="es" xmltv_id="TVEInternacionalEuropeAsia.es" site_id="tve-internacional">TVE Internacional</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="MTV3.fi" site_id="mtv3">MTV3</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="TV5HD.fi" site_id="tv5-hd">TV5 HD</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="TVFinland.fi" site_id="tv-finland">TV Finland</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="YleTeemaFem.fi" site_id="yle-teema-fem">Yle Teema & Fem</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="YleTV1.fi" site_id="yle-tv1">Yle TV1</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="YleTV2.fi" site_id="yle-tv2">Yle TV2</channel>
|
||||
<channel site="tv.nu" lang="fr" xmltv_id="France2.fr" site_id="france-2">France 2</channel>
|
||||
<channel site="tv.nu" lang="fr" xmltv_id="TV5MondeEurope.fr" site_id="tv5-monde-europe">TV5 Monde Europe</channel>
|
||||
<channel site="tv.nu" lang="it" xmltv_id="Rai1.it" site_id="rai-1">Rai 1</channel>
|
||||
<channel site="tv.nu" lang="it" xmltv_id="Rai2.it" site_id="rai-2">Rai 2</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="NRK1.no" site_id="nrk1">NRK1</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="NRK3.no" site_id="nrk3">NRK3</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="NRKSuperNRK3HD.no" site_id="nrk-super-nrk3-hd">NRK Super / NRK3 HD</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="TV3.no" site_id="tv3-norge">TV3 Norge</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="TV3Plus.no" site_id="tv3-30147">TV3+</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="TVNorgeHD.no" site_id="tv-norge-hd">TV Norge HD</channel>
|
||||
<channel site="tv.nu" lang="pl" xmltv_id="TVPPolonia.pl" site_id="tvp-polonia">TVP Polonia</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="adult-channel-nightly">Adult Channel Nightly</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="bbc-news">BBC News</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="bloomberg-tv-hd-uk">Bloomberg TV HD (UK)</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="curiosity-stream-eu">Curiosity Stream EU</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="cbs-reality-mena">CBS Reality MENA</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="disney-junior-lang-tabla">Disney Junior (lång tablå)</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="dw">DW</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="history-hd-internationell">History HD (Internationell)</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="mitteldeutscher-rundfunk">Mitteldeutscher Rundfunk (MDF)</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="mtv-00s-europe">MTV 00s Europe</channel>
|
||||
|
@ -12,26 +85,16 @@
|
|||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="national-geographic-hd-3">National Geographic HD</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="national-geographic-hd-30242">National Geographic HD</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="nick-jr-lang-tabla">Nick JR (lång tablå)</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="true-crime">True Crime</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="3sat.de" site_id="3sat">3sat</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="AdultChannel.uk" site_id="adult-channel">Adult Channel</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="AlJazeeraEnglish.qa" site_id="al-jazeera-english">Al Jazeera English</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="v-sport-football-live-1">V Sport Football Live 1</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="v-sport-football-live-2">V Sport Football Live 2</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="" site_id="v-sport-football-live-3">V Sport Football Live 3</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="AnimalPlanetNordic.uk" site_id="animal-planet">Animal Planet</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="arte.fr" site_id="arte">ARTE</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="ATGLive.se" site_id="atg-live">ATG Live</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="AxessTV.se" site_id="axess-tv">Axess TV</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="BBCEarthNordic.uk" site_id="bbc-earth">BBC Earth</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="BBCNordic.uk" site_id="bbc-nordic">BBC Nordic</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="BrazzersTVEurope.us" site_id="brazzers-tv-plus">BraZZers TV Plus</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Cartoonito.se" site_id="cartoonito">Cartoonito</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="CartoonNetworkScandinavia.uk" site_id="cartoon-network">Cartoon Network</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="CGTNDocumentary.cn" site_id="china-global-television-network-9-documentary">China Global Television Network 9 Documentary</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="CGTNEurope.cn" site_id="china-global-television-network">China Global Television Network</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="ClubMTVEurope.uk" site_id="club-mtv">Club MTV</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="CNBCEurope.uk" site_id="cnbc">CNBC</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="CNNInternationalEurope.us" site_id="cnn-international">CNN International</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="CuriosityChannel.us" site_id="curiositystream">CuriosityStream</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="DasErste.de" site_id="das-erste">Das Erste</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="DiscoveryChannel.se" site_id="discovery-channel">Discovery Channel</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="DiscoveryPlusExtra1.se" site_id="discovery-extra-1">Discovery+ Extra 1</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="DiscoveryPlusExtra2.se" site_id="discovery-extra-2">Discovery+ Extra 2</channel>
|
||||
|
@ -44,109 +107,56 @@
|
|||
<channel site="tv.nu" lang="sv" xmltv_id="DiscoveryScience.uk" site_id="discovery-science">Discovery Science</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="DisneyChannelScandinavia.uk" site_id="disney-channel">Disney Channel</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="DisneyJuniorScandinavia.uk" site_id="disney-junior">Disney Junior</channel>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="dk4.dk" site_id="dk4">DK4</channel>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="dk4HD.dk" site_id="dk4-hd">DK4 HD</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="DMAX.de" site_id="dmax">DMAX</channel>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="DR1.dk" site_id="dr1">DR1</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="DR2.dk" site_id="dr2">DR2</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="DR3.dk" site_id="dr3">DR3</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="DRK.dk" site_id="dr-k">DR K</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="DRRamasjang.dk" site_id="dr-ramasjang">DR Ramasjang</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="DRUltra.dk" site_id="dr-ultra">DR Ultra</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="DWDeutsch.de" site_id="dw-en-aleman">DW en alemán</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="EEurope.nl" site_id="e">E!</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="eSports1.de" site_id="esportsone">eSportsone</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="eSportsTVHD.se" site_id="esportstv-hd">eSportsTV HD</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="EuronewsEnglish.fr" site_id="euro-news">Euro News</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Eurosport1.fr" site_id="eurosport-1">Eurosport 1</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Eurosport2.fr" site_id="eurosport-2">Eurosport 2</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="ExpressenTV.se" site_id="expressen-tv">Expressen TV</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="ExtremeSportsChannel.nl" site_id="extreme-sports-channel">Extreme Sports Channel</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="FashionTVEurope.fr" site_id="ftv">FTV</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="FightSports.us" site_id="fight-sports">Fight Sports</channel>
|
||||
<channel site="tv.nu" lang="fr" xmltv_id="France2.fr" site_id="france-2">France 2</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="France24EnglishHD.fr" site_id="france-24-english-hd">France 24 English HD</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="FUELTV.at" site_id="fuel-tv">FUEL TV</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="GINXEsportsTV.uk" site_id="ginx-esports-tv">GINX eSports TV</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Godare.se" site_id="godare">Godare</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="GODTV.uk" site_id="god-tv">GOD TV</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="HighTV3D.us" site_id="high-tv-3d">High TV 3D</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="History2Nordic.us" site_id="h2">H2</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="HistoryHD.se" site_id="history-hd">History HD</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="HorseCountryTV.uk" site_id="horse-country-tv">Horse & Country TV</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="HRT1.hr" site_id="hrt1">HRT1</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="HustlerHD.nl" site_id="hustler-tv">Hustler TV</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="InvestigationDiscovery.se" site_id="investigation-discovery">Investigation Discovery</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Kanal10.se" site_id="kanal-10">Kanal 10</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Kanal11.se" site_id="kanal-11">Kanal 11</channel>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="Kanal4.dk" site_id="kanal-4">Kanal 4</channel>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="Kanal5.dk" site_id="kanal-5-danmark">Kanal 5 Danmark</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Kanal5.se" site_id="kanal-5">Kanal 5</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Kanal9.se" site_id="kanal-9">Kanal 9</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Kanal10.se" site_id="kanal-10">Kanal 10</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Kanal11.se" site_id="kanal-11">Kanal 11</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Kunskapskanalen.se" site_id="kunskapskanalen">Kunskapskanalen</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="LoveNature4K.ca" site_id="love-nature-4k-uhd">Love Nature 4K UHD</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Mezzo.fr" site_id="mezzo">Mezzo</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="MezzoLive.fr" site_id="mezzo-live">Mezzo Live</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Motorvision.de" site_id="motorvision-tv">Motorvision TV</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Motorvision.de" site_id="motorvision-tv-30230">Motorvision TV (DE)</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="MTV3.fi" site_id="mtv3">MTV3</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="MTV80s.uk" site_id="mtv-80s">MTV 80s</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="MTV90s.uk" site_id="mtv-90s">MTV 90s</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="MTVAitio.se" site_id="mtv-aitio">MTV Aitio</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="MTVGlobal.uk" site_id="mtv">MTV</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="MTVHitsEurope.uk" site_id="mtv-hits">MTV Hits</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="MTVLive.uk" site_id="mtv-live-hd">MTV Live HD</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="MTVViihde.se" site_id="mtv-viihde">MTV Viihde</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="NationalGeographic.se" site_id="national-geographic">National Geographic</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="NationalGeographicWild.se" site_id="national-geographic-wild">National Geographic Wild</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="NauticalChannel.it" site_id="nautical-channel">Nautical Channel</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Nelonen.fi" site_id="nelonen">Nelonen</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="NFLNetwork.us" site_id="nfl-network">NFL Network</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="NHKWorldJapan.jp" site_id="nhk-world-europe">NHK World Europe</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="NickelodeonScandinavia.nl" site_id="nickelodeon">Nickelodeon</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="NickJrScandinavia.nl" site_id="nick-jr">Nick JR</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="NicktoonsScandinavia.nl" site_id="nicktoons">Nicktoons</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="NRK1.no" site_id="nrk1">NRK1</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="NRK2.no" site_id="nrk2">NRK2</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="NRK3.no" site_id="nrk3">NRK3</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="NRKSuperNRK3HD.no" site_id="nrk-super-nrk3-hd">NRK Super / NRK3 HD</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="OUTtv.nl" site_id="outtv">OUTtv</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="ParamountNetwork.se" site_id="paramount-network-30228">Paramount Network</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="PenthouseHD1.us" site_id="penthouse-hd-1">Penthouse HD 1</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="PenthouseHD2.us" site_id="penthouse-hd-2">Penthouse HD 2</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="PinkPlus.rs" site_id="pink-plus">Pink Plus</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="PlayboyTVEurope.us" site_id="playboy-tv-europe">Playboy TV Europe</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="ProSieben.de" site_id="prosieben">ProSieben</channel>
|
||||
<channel site="tv.nu" lang="it" xmltv_id="Rai1.it" site_id="rai-1">Rai 1</channel>
|
||||
<channel site="tv.nu" lang="it" xmltv_id="Rai2.it" site_id="rai-2">Rai 2</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="RTL.de" site_id="rtl">RTL</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="RTLSuper.de" site_id="super-rtl">Super RTL</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="RTLZwei.de" site_id="rtlzwei">RTLZWEI</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="SFkanalen.se" site_id="c-more-sport-sf-kanalen">SF-Kanalen</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="SFkanalen.se" site_id="sf-kanalen">SF Kanalen</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="Sjuan.se" site_id="sjuan">Sjuan</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="SkyHistory.uk" site_id="history-uk">History (UK)</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="SkyNewsInternational.uk" site_id="sky-news">Sky News</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="SkyShowtime1.se" site_id="skyshowtime-1">SkyShowtime 1</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="SkyShowtime2.se" site_id="skyshowtime-2">SkyShowtime 2</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="StingrayClassica.ca" site_id="stingray-classica">Stingray Classica</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="StingrayDJAZZ.ca" site_id="djazz-hd">Djazz HD</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="SVT1.se" site_id="svt1">SVT1</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="SVT2.se" site_id="svt2">SVT2</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="SVT24.se" site_id="svt24">SVT24</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="SVTBarn.se" site_id="svt-barn">SVT Barn</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TLC.se" site_id="tlc">TLC</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="TraceUrban.fr" site_id="trace-urban-hd">Trace Urban HD</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TravelChannelEMEA.uk" site_id="travel-channel-30226">Travel Channel</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV10.se" site_id="tv10">TV10</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV12.se" site_id="tv12">TV12</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV2.dk" site_id="tv2">TV2</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV2Direkte.no" site_id="tv2-norge">TV2 (Norge)</channel>
|
||||
<channel site="tv.nu" lang="da" xmltv_id="TV3.dk" site_id="tv3-danmark">TV3 Danmark</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="TV3.no" site_id="tv3-norge">TV3 Norge</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV3.se" site_id="tv3">TV3</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV3Plus.dk" site_id="3-plus-danmark">3 Plus Danmark</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="TV3Plus.no" site_id="tv3-30147">TV3+</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV4.se" site_id="tv4">TV4</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV4Fakta.se" site_id="tv4-fakta">TV4 Fakta</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV4Film.se" site_id="tv4-film">TV4 Film</channel>
|
||||
|
@ -162,15 +172,10 @@
|
|||
<channel site="tv.nu" lang="sv" xmltv_id="TV4SportLive4.se" site_id="tv4-sport-live-4">TV4 Sport Live 4</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV4Stars.se" site_id="tv4-stars">TV4 Stars</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV4Tennis.se" site_id="tv4-tennis">TV4 Tennis</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="TV5HD.fi" site_id="tv5-hd">TV5 HD</channel>
|
||||
<channel site="tv.nu" lang="fr" xmltv_id="TV5MondeEurope.fr" site_id="tv5-monde-europe">TV5 Monde Europe</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV6.se" site_id="tv6">TV6</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV8.se" site_id="tv8">TV8</channel>
|
||||
<channel site="tv.nu" lang="es" xmltv_id="TVChile.cl" site_id="tv-chile">TV Chile</channel>
|
||||
<channel site="tv.nu" lang="es" xmltv_id="TVEInternacionalEuropeAsia.es" site_id="tve-internacional">TVE Internacional</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="TVFinland.fi" site_id="tv-finland">TV Finland</channel>
|
||||
<channel site="tv.nu" lang="no" xmltv_id="TVNorgeHD.no" site_id="tv-norge-hd">TV Norge HD</channel>
|
||||
<channel site="tv.nu" lang="pl" xmltv_id="TVPPolonia.pl" site_id="tvp-polonia">TVP Polonia</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV10.se" site_id="tv10">TV10</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TV12.se" site_id="tv12">TV12</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="TVVisionSverige.se" site_id="vision-sverige">Vision Sverige</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="VFilmAction.se" site_id="v-film-action">V Film Action</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="VFilmFamily.se" site_id="v-film-family">V Film Family</channel>
|
||||
|
@ -180,7 +185,6 @@
|
|||
<channel site="tv.nu" lang="sv" xmltv_id="ViasatHistory.se" site_id="viasat-history">Viasat History</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="ViasatNature.se" site_id="viasat-nature">Viasat Nature</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="vijuPlusSport.ru" site_id="viasat-sport-hd">Viasat Sport HD</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="VOX.de" site_id="vox">VOX</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="VSeries.se" site_id="v-series">V Series</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="VSport1.se" site_id="v-sport-1">V Sport 1</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="VSportExtra.se" site_id="v-sport-extra">V Sport Extra</channel>
|
||||
|
@ -195,9 +199,4 @@
|
|||
<channel site="tv.nu" lang="sv" xmltv_id="VSportPremium.se" site_id="v-sport-premium">V Sport Premium</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="VSportUltraHD.se" site_id="v-sport-ultra-hd">V Sport Ultra HD</channel>
|
||||
<channel site="tv.nu" lang="sv" xmltv_id="VSportVinter.se" site_id="v-sport-vinter">V Sport Vinter</channel>
|
||||
<channel site="tv.nu" lang="en" xmltv_id="WildTV.ca" site_id="wild-tv-hd">WILD TV HD</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="YleTeemaFem.fi" site_id="yle-teema-fem">Yle Teema & Fem</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="YleTV1.fi" site_id="yle-tv1">Yle TV1</channel>
|
||||
<channel site="tv.nu" lang="fi" xmltv_id="YleTV2.fi" site_id="yle-tv2">Yle TV2</channel>
|
||||
<channel site="tv.nu" lang="de" xmltv_id="ZDF.de" site_id="zdf">ZDF</channel>
|
||||
</channels>
|
||||
</channels>
|
||||
|
|
|
@ -15,8 +15,7 @@ module.exports = {
|
|||
programs.push({
|
||||
title: item.title,
|
||||
description: item.description,
|
||||
image: item.imageLandscape,
|
||||
category: item.genres,
|
||||
category: Array.isArray(item.genres) ? item.genres.map(genre => genre.name) : null,
|
||||
season: item.seasonNumber || null,
|
||||
episode: item.episodeNumber || null,
|
||||
start: parseStart(item),
|
||||
|
@ -27,38 +26,41 @@ module.exports = {
|
|||
return programs
|
||||
},
|
||||
async channels() {
|
||||
const channels = []
|
||||
const axios = require('axios')
|
||||
const result = await axios
|
||||
.get('https://www.tv.nu/alla-kanaler')
|
||||
.then(response => response.data)
|
||||
.catch(console.error)
|
||||
|
||||
// prettier-ignore
|
||||
const modules = ['ch-51', 'ch-52', 'ch-60', 'ch-27', 'ch-63', 'ch-65', 'ch-64', 'ch-66', 'ch-67', 'ch-68', 'ch-70', 'ch-88', 'ch-45', 'ch-132', 'ch-30228', 'ch-49', 'ch-53', 'ch-30233', 'ch-55', 'ch-93', 'ch-47', 'ch-4', 'ch-134', 'ch-105', 'ch-104', 'ch-131', 'ch-125', 'ch-126', 'ch-30215', 'ch-151', 'ch-122', 'ch-123', 'ch-124', 'ch-30194', 'ch-101', 'ch-106', 'ch-108', 'ch-107', 'ch-136', 'ch-137', 'ch-140', 'ch-120', 'ch-139', 'ch-74', 'ch-71', 'ch-76', 'ch-33', 'ch-18', 'ch-6', 'ch-30197', 'ch-30152', 'ch-146', 'ch-142', 'ch-128', 'ch-30211', 'ch-46', 'ch-162', 'ch-75', 'ch-119', 'ch-57', 'ch-82', 'ch-21', 'ch-22', 'ch-26', 'ch-145', 'ch-38', 'ch-10', 'ch-23', 'ch-9', 'ch-129', 'ch-69', 'ch-12', 'ch-3', 'ch-7', 'ch-81', 'ch-72', 'ch-2', 'ch-111', 'ch-16', 'ch-43', 'ch-80', 'ch-141', 'ch-143', 'ch-164', 'ch-147', 'ch-58', 'ch-39', 'ch-36', 'ch-15', 'ch-154', 'ch-40', 'ch-159', 'ch-30123', 'ch-30132', 'ch-30130', 'ch-30133', 'ch-30125', 'ch-30127', 'ch-30126', 'ch-30134', 'ch-30128', 'ch-30129', 'ch-30124', 'ch-30138', 'ch-30147', 'ch-30146', 'ch-30145', 'ch-30149', 'ch-30151', 'ch-30150', 'ch-30137', 'ch-30136', 'ch-30139', 'ch-30140', 'ch-30142', 'ch-30141', 'ch-161', 'ch-35', 'ch-34', 'ch-32', 'ch-30', 'ch-54', 'ch-112', 'ch-1', 'ch-86', 'ch-84', 'ch-28', 'ch-25', 'ch-13', 'ch-14', 'ch-11', 'ch-8', 'ch-5', 'ch-20', 'ch-24', 'ch-19', 'ch-30168', 'ch-30175', 'ch-30154', 'ch-30225', 'ch-30178', 'ch-30184', 'ch-30185', 'ch-30186', 'ch-30187', 'ch-30189', 'ch-30191', 'ch-30192', 'ch-30216', 'ch-30193', 'ch-30195', 'ch-30196', 'ch-30200', 'ch-30209', 'ch-30231', 'ch-30213', 'ch-30230', 'ch-30214', 'ch-30226', 'ch-56', 'ch-153', 'ch-148', 'ch-41', 'ch-37', 'ch-30157', 'ch-30158', 'ch-30232', 'ch-30221', 'ch-30222', 'ch-30223', 'ch-30234', 'ch-91', 'ch-100', 'ch-30235', 'ch-30236', 'ch-30237', 'ch-30239', 'ch-30240', 'ch-30241', 'ch-30242', 'ch-30249', 'ch-30256', 'ch-30253', 'ch-30250', 'ch-30257', 'ch-30255', 'ch-30251', 'ch-30252', 'ch-30254', 'ch-30258', 'ch-30259', 'ch-30260', 'ch-30261', 'ch-30262', 'ch-30263', 'ch-30264', 'ch-30265', 'ch-30372', 'ch-30373', 'ch-30374', 'ch-30375', 'ch-30376']
|
||||
if (result) {
|
||||
const [, data] = result.match(/\\"allModules\\":(\[(.*?)\])/i) || [null, null]
|
||||
const modules = JSON.parse(data.replace(/\\/g, ''))
|
||||
if (Array.isArray(modules) && modules.length) {
|
||||
let offset = 0
|
||||
while (offset !== undefined) {
|
||||
const data = await axios
|
||||
.get(`https://web-api.tv.nu/tableauLinearChannels`, {
|
||||
params: {
|
||||
modules,
|
||||
date: dayjs().format('YYYY-MM-DD'),
|
||||
limit: 12,
|
||||
offset
|
||||
}
|
||||
})
|
||||
.then(r => r.data)
|
||||
.catch(console.error)
|
||||
|
||||
let channels = []
|
||||
|
||||
let offset = 0
|
||||
while (offset !== undefined) {
|
||||
const data = await axios
|
||||
.get(`https://web-api.tv.nu/tableauLinearChannels`, {
|
||||
params: {
|
||||
modules,
|
||||
date: dayjs().format('YYYY-MM-DD'),
|
||||
limit: 12,
|
||||
offset
|
||||
}
|
||||
})
|
||||
.then(r => r.data)
|
||||
.catch(console.error)
|
||||
|
||||
console.log(data.data.nextOffset)
|
||||
|
||||
data.data.modules.forEach(item => {
|
||||
channels.push({
|
||||
lang: 'sv',
|
||||
name: item.content.name,
|
||||
site_id: item.content.slug
|
||||
})
|
||||
})
|
||||
|
||||
offset = data.data.nextOffset
|
||||
data.data.modules.forEach(item => {
|
||||
channels.push({
|
||||
lang: 'sv',
|
||||
name: item.content.name,
|
||||
site_id: item.content.slug
|
||||
})
|
||||
})
|
||||
offset = data.data.nextOffset
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return channels
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const { parser, url } = require('./tv.nu.config.js')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
|
@ -5,7 +7,7 @@ const customParseFormat = require('dayjs/plugin/customParseFormat')
|
|||
dayjs.extend(customParseFormat)
|
||||
dayjs.extend(utc)
|
||||
|
||||
const date = dayjs.utc('2022-03-06', 'YYYY-MM-DD').startOf('d')
|
||||
const date = dayjs.utc('2024-12-03', 'YYYY-MM-DD').startOf('d')
|
||||
const channel = {
|
||||
site_id: '3sat',
|
||||
xmltv_id: '3sat.de'
|
||||
|
@ -13,13 +15,12 @@ const channel = {
|
|||
|
||||
it('can generate valid url', () => {
|
||||
expect(url({ channel, date })).toBe(
|
||||
'https://web-api.tv.nu/channels/3sat/schedule?date=2022-03-06&fullDay=true'
|
||||
'https://web-api.tv.nu/channels/3sat/schedule?date=2024-12-03&fullDay=true'
|
||||
)
|
||||
})
|
||||
|
||||
it('can parse response', () => {
|
||||
const content =
|
||||
'{"meta":{"status":200},"data":{"id":30139,"name":"RTL","slug":"rtl","themedLogo":{"light":{"url":"https://new.static.tv.nu/19402170","isFallback":false},"dark":{"url":"https://new.static.tv.nu/59995595","isFallback":true}},"broadcasts":[{"type":"broadcast","id":"1OoSZY-7Q7-1DzQ","slug":"csi","programId":"2452","isPlay":true,"isMovie":false,"isSeries":true,"isLive":false,"title":"CSI: Den Tätern auf der Spur","description":"Hellseherin Sedona Wiley wird tot aufgefunden. Die Ermittlungen führen zu einem alten Mord. Gordon Wallace wurde vor 15 Jahren beschuldigt, seine Frau getötet zu haben, jedoch wurde nie eine Leiche gefunden.","imagePortrait":"https://new.static.tv.nu/16686512","imageLandscape":"https://new.static.tv.nu/13119997","year":2006,"genres":["Action","Kriminaldrama","Mysterium","Spänning","Thriller"],"imdb":{"rating":"7.7","link":"https://www.imdb.com/title/tt0247082"},"playProviders":[{"name":"Viaplay","slug":"viaplay","themedLogo":{"light":{"url":"https://new.static.tv.nu/17048879","isFallback":false},"dark":{"url":"https://new.static.tv.nu/119659437","isFallback":false}},"url":"https://viaplay.se/serier/csi-crime-scene-investigation/sasong-6/avsnitt-19?utm_source=tv.nu&utm_content=CSI%3A+Crime+Scene+Investigation"},{"name":"Tele2 Play","slug":"tele2play","themedLogo":{"light":{"url":"https://new.static.tv.nu/158747195","isFallback":false},"dark":{"url":"https://new.static.tv.nu/158747194","isFallback":false}},"url":"https://www.comhemplay.se/open/vod/SH016259780000?utm_source=tv.nu&utm_medium=partner&utm_campaign=tabla&utm_content=CSI%3A+Crime+Scene+Investigation"},{"name":"Prime Video","slug":"prime-video","themedLogo":{"light":{"url":"https://new.static.tv.nu/23085972","isFallback":false},"dark":{"url":"https://new.static.tv.nu/275111","isFallback":true}},"url":"https://app.primevideo.com/detail?gti=amzn1.dv.gti.54af67f9-e58f-e6db-4991-81eb4f2efa37&utm_source=tv.nu"}],"broadcast":{"id":"1OoSZY-7Q7-1DzQ","startTime":1660878900000,"endTime":1660881600000,"channel":{"name":"RTL","slug":"rtl","themedLogo":{"light":{"url":"https://new.static.tv.nu/19402170","isFallback":false},"dark":{"url":"https://new.static.tv.nu/59995595","isFallback":true}}}},"totalEpisodes":24,"episodeNumber":19,"seasonNumber":6}]}}'
|
||||
const content = fs.readFileSync(path.join(__dirname, '__data__', 'content.json'))
|
||||
const result = parser({ content }).map(p => {
|
||||
p.start = p.start.toJSON()
|
||||
p.stop = p.stop.toJSON()
|
||||
|
@ -28,22 +29,20 @@ it('can parse response', () => {
|
|||
|
||||
expect(result).toMatchObject([
|
||||
{
|
||||
start: '2022-08-19T03:15:00.000Z',
|
||||
stop: '2022-08-19T04:00:00.000Z',
|
||||
title: 'CSI: Den Tätern auf der Spur',
|
||||
start: '2024-12-03T11:50:00.000Z',
|
||||
stop: '2024-12-03T12:15:00.000Z',
|
||||
title: 'Natur im Garten',
|
||||
description:
|
||||
'Hellseherin Sedona Wiley wird tot aufgefunden. Die Ermittlungen führen zu einem alten Mord. Gordon Wallace wurde vor 15 Jahren beschuldigt, seine Frau getötet zu haben, jedoch wurde nie eine Leiche gefunden.',
|
||||
image: 'https://new.static.tv.nu/13119997',
|
||||
category: ['Action', 'Kriminaldrama', 'Mysterium', 'Spänning', 'Thriller'],
|
||||
season: 6,
|
||||
episode: 19
|
||||
'Der Gartenbuchautor Karl Ploberger gibt in der Sendung Tipps und Tricks zur Gartenpflege.',
|
||||
category: ['Konsument', 'Underhållning', 'Trädgård'],
|
||||
season: 29,
|
||||
episode: 9
|
||||
}
|
||||
])
|
||||
})
|
||||
|
||||
it('can handle empty guide', () => {
|
||||
const result = parser({
|
||||
content: '{"meta":{"status":200},"data":{"broadcasts":[]}}'
|
||||
})
|
||||
const content = fs.readFileSync(path.join(__dirname, '__data__', 'no_content.json'))
|
||||
const result = parser({ content })
|
||||
expect(result).toMatchObject([])
|
||||
})
|
||||
|
|
|
@ -4,7 +4,28 @@ https://tv.yandex.ru/
|
|||
|
||||
This site is protected by captcha, so if you hit by an error `Got captcha, please goto https://tv.yandex.ru and update cookies!`,
|
||||
update site configuration in `tv.yandex.ru.config.js` by heading to this site and use browser
|
||||
Developer Tools and replace matching cookies.
|
||||
Developer Tools and replace matching cookies. The Cookie will likely lasting for one year.
|
||||
|
||||
To enable debugging while updating channel list or grabbing the guide, set `DEBUG` environment
|
||||
to `site:tv.yandex.ru` or `site:*`.
|
||||
|
||||
On Windows with Command Prompt:
|
||||
|
||||
```sh
|
||||
set DEBUG="site:tv.yandex.ru"
|
||||
```
|
||||
|
||||
On Windows with PowerShell:
|
||||
|
||||
```ps
|
||||
$env:DEBUG="site:tv.yandex.ru"
|
||||
```
|
||||
|
||||
On Unix-like OSes:
|
||||
|
||||
```sh
|
||||
export DEBUG="site:tv.yandex.ru"
|
||||
```
|
||||
|
||||
### Download the guide
|
||||
|
||||
|
|
|
@ -1,364 +1,100 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="100">Неизвестная Планета</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1096">Страшное HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1178">Museum TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1199">Открытый мир</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1208">SHANT Premium</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1257">4K Fashion TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1324">Бьюти.TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1328">КБС Рус</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1347">SONGTV Georgia</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1349">Светлое ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1351">Самара 24</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1367">Диалоги о рыбалке</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1370">Китай ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1379">Перпетуум Мобиле</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1387">КиноМеню HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1395">Детское кино</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1396">МультСезон</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1415">Теледом</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1416">Дом Кино Int</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1461">Удар</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1471">Дума ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1474">Глазами туриста 4К</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1475">Живи активно HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="148">Foodman.club</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1483">DetectiveJam</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1484">FamilyJam</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1495">Окко.Спорт</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1515">KidsTV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1516">Дорама HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1534">Загородная жизнь HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1549">Sumiko</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="196">Хабар 24</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="225">Вкусное TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="230">Советские мультфильмы</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="231">Сказки Зайки</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="233">МузСоюз</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="242">Терра Инкогнита</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="244">Мир вокруг</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="435">Россия-Планета</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="438">MTV 80s</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="446">ТНВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="468">Беларусь-24</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="472">Ля-минор. Мой музыкальный</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="532">Nickelodeon HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="559">РТВ - Любимое кино</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="577">Настоящее Страшное Телевидение</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="731">Nick Jr</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="792">Sony ТВ HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="80">HD Медиа</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="1HDMusicTelevision.ru" site_id="99">1 HD Music Television</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="360.ru" site_id="95">360°</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="360News.ru" site_id="191">360° Новости</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="365daysTV.ru" site_id="470">365 дней ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1102">CNL-Сибирь</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1257">4K Fashion TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1324">Бьюти.TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1461">Удар</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1471">Дума ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1474">Глазами туриста 4К</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1475">Живи активно HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1549">Sumiko</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1552">ROMANCE</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1553">Cartoon Classics</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1554">Suspense</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1556">VHS</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1557">Чижик</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1558">KIONХИТ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1559">Народ Все Видит</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1560">Новый Игровой Канал</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1561">Epic</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1562">MIXM</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1567">Мы</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1570">Q Arena</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1571">Q Footboll</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="" site_id="1572">Q League</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="3ABNRussia.ru" site_id="218">Три Ангела</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="7tv.ru" site_id="1241">7 TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="360.ru" site_id="95">360.ru</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="A1.ru" site_id="237">A1</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="A2.ru" site_id="89">A2</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="AIVATV.ru" site_id="1326">Aiva</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="AmediaHit.ru" site_id="239">Amedia Hit</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="AmediaPremium.ru" site_id="238">Amedia Premium HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="AnekdotTV.ru" site_id="85">Анекдот ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Ani.ru" site_id="1438">Ani</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ArirangTV.kr" site_id="1327">Arirang</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Arsenal.ru" site_id="1504">Арсенал</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="AutoPlus.ru" site_id="436">Авто Плюс</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BabyTime.ru" site_id="1512">Baby Time</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Bashkortostan24.ru" site_id="184">Башкортостан 24</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BelRos.ru" site_id="675">БелРос</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BigAsia.ru" site_id="116">Большая Азия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Blokbaster.ru" site_id="1454">Блокбастер HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Bober.ru" site_id="1171">Бобер</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BoksTV.ru" site_id="1095">Бокс ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BollywoodHD.ru" site_id="1105">Bollywood HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BRIDGE.ru" site_id="102">Bridge TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BRIDGEClassic.ru" site_id="1403">Bridge TV Classic</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BRIDGEDeluxe.ru" site_id="1404">Bridge TV Deluxe</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BRIDGEFresh.ru" site_id="1458">Bridge TV Фрэш</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BRIDGEHits.ru" site_id="1405">Bridge TV Hits</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BRIDGERock.ru" site_id="1513">Bridge Rock</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BRIDGERussianHit.ru" site_id="608">Bridge TV Русский Хит</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="BRIDGESchlager.ru" site_id="1435">BRIDGE TV Шлягер</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Carousel.ru" site_id="554">Карусель INT</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="CBSRealityEMEA.uk" site_id="729">CBS Reality</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="CentralTV.ru" site_id="198">Центральное телевидение (ЦТВ)</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Channel5.ru" site_id="12">Пятый International</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Channel8.ru" site_id="456">8 Канал</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ChannelOne.ru" site_id="16">Первый</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Cinema.ru" site_id="396">Cinema</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ClassicMusic.ru" site_id="496">C Music TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ClubMTVEurope.uk" site_id="1206">Club MTV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="CNBC.us" site_id="713">CNBC</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="CuriosityStream.ru" site_id="1509">CuriosityStream</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="DaVinci.ru" site_id="525">Da Vinci</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="DenPobedy.ru" site_id="1514">День Победы</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Detskimir.ru" site_id="1256">Детский мир</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Dialogiorybalke.ru" site_id="1361">Телеканал Совета Федерации "Вместе РФ"</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="DivingTV.ru" site_id="206">Дайвинг.TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Doctor.ru" site_id="1245">Доктор</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="DocuBoxHD.ru" site_id="1227">DocuBox HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="DomashnieZhivotnye.ru" site_id="578">Домашние животные</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Drive.ru" site_id="573">Драйв</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ducktv.sk" site_id="1530">DuckTV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Dushevnoe.ru" site_id="1218">Душевное</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="earthTV.de" site_id="234">EarthTV The World Live</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="EchoTV.ru" site_id="66">Эхо TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Eda.ru" site_id="64">ЕДА</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="EGETV.ru" site_id="211">ЕГЭ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="EnglishClass.ru" site_id="1529">English Class HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ETV.ru" site_id="235">E TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="EuropaPlusTV.ru" site_id="656">Europa Plus TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Evrokino.ru" site_id="505">Еврокино</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ExtremeSportsChannel.nl" site_id="484">Extreme Sports</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FAN.ru" site_id="1439">FAN</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FashionBoxHD.nl" site_id="1242">Fashion Box HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FashionLifeStyle.ru" site_id="789">Fashion & LifeStyle</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FashionStyle4K.ru" site_id="1204">Fashion & Style 4K</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FashionTV.ru" site_id="152">Fashion TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FashionTVHD.fr" site_id="423">Fashion TV HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FastFunBox.nl" site_id="1243">Fast & Fun Box HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FeniksplusKino.ru" site_id="659">Феникс+ Кино</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FilmBox.ru" site_id="1228">FilmBox HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FilmBoxArthouse.nl" site_id="1244">FilmBox Arthouse</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FoodTime.ru" site_id="742">FoodTime</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Football.ru" site_id="105">Футбол</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FreshTV.ru" site_id="106">FreshTV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="FUELTV.at" site_id="1176">Fuel TV HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Futbolnyy.ru" site_id="1446">Футбольный</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Gagsnetwork.ru" site_id="1421">Gagsnetwork</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Futbolnyy.ru" site_id="1446">Мяч</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="GlazamiTurista.ru" site_id="1473">Глазами туриста</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="GulliGirl.ru" site_id="707">Gulli Girl</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="HDL.ru" site_id="528">HDL</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="History.ru" site_id="1104">History</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="History2.ru" site_id="1191">HISTORY2</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="History2HD.ru" site_id="1237">History2 HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Hit.ru" site_id="1459">Хит HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Hollywood.ru" site_id="615">Hollywood</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="HopeChannelRussia.ru" site_id="127">Надежда</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="HuzurTV.ru" site_id="1419">Хузур ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="IllusionPlus.ru" site_id="424">Иллюзион +</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="India.ru" site_id="627">Индия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="IndiyskoyeKino.ru" site_id="700">Индийское кино</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="InsightUHD.ru" site_id="1172">Insight Ultra HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Istoriya.ru" site_id="794">История</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Izvestia.ru" site_id="96">Известия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="JibekJoly.kz" site_id="216">Jibek Joly</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="JoyCook.ru" site_id="241">Joy Cook</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="KaleidoscopeTV.ru" site_id="232">Калейдоскоп ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kamedi.ru" site_id="1449">Камеди</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="KapitanFantastika.ru" site_id="1166">Капитан Фантастика</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kavkaz24.ru" site_id="1382">Кавказ 24</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="KHL.ru" site_id="562">KHL</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="KHLPrime.ru" site_id="796">KHL Prime</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Khokkeynyy.ru" site_id="1447">Хоккейный</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Khokkeynyy.ru" site_id="1447">Хоккей ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kineko.ru" site_id="1478">Кинеко</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kinohit.ru" site_id="586">Кинохит</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="KinoJam1.ru" site_id="1423">KinoJam 1</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="KinoJam2.ru" site_id="1424">KinoJam 2</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kinokomedija.ru" site_id="710">Кинокомедия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kinoman.ru" site_id="1527">КИНОМАН</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kinomix.ru" site_id="635">Киномикс</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kinopokaz.ru" site_id="391">Кинопоказ HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kinopremyera.ru" site_id="595">Кинопремьера</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kinosemja.ru" site_id="766">Киносемья</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kinoseriya.ru" site_id="701">Киносерия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kinosvidanie.ru" site_id="551">Киносвидание</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="KinoTV.ru" site_id="795">КиноТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kinouzhas.ru" site_id="1437">КИНОУЖАС</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Kluch.ru" site_id="1417">Ключ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Komedia.ru" site_id="1159">Комедия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Komediynoe.ru" site_id="678">Комедийное</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Konniymir.ru" site_id="1184">Конный мир</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Ktoestkto.ru" site_id="685">Кто есть кто</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="KukhnyaTV.ru" site_id="618">Кухня</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="KVNTV.ru" site_id="1192">КВН ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="LDPRTV.ru" site_id="1107">ЛДПР ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Leva.ru" site_id="1480">Лёва</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="LuxeTV.lu" site_id="494">Luxe HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="LuxeTV.lu" site_id="542">Luxe.TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Luxury.ru" site_id="785">LUXURY</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="LyubimoeTV.ru" site_id="119">Любимое.ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Mama.ru" site_id="622">Мама</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MatchArena.ru" site_id="1173">Матч! Арена</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MatchBoets.ru" site_id="547">Матч! Боец</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MatchFutbol1.ru" site_id="646">Матч! Футбол 1</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MatchFutbol1HD.ru" site_id="801">Матч! Футбол 1 HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MatchFutbol2.ru" site_id="593">Матч! Футбол 2</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MatchFutbol2HD.ru" site_id="800">Матч! Футбол 2 HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MatchFutbol3.ru" site_id="797">Матч! Футбол 3</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MatchIgra.ru" site_id="1174">Матч! Игра</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MatchPremier.ru" site_id="197">Матч Премьер</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MaturTV.ru" site_id="178">Матур ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MCMTop.ru" site_id="583">MCM TOP</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Mezzo.fr" site_id="600">Mezzo</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MezzoLive.fr" site_id="702">Mezzo Live</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MGMHD.us" site_id="743">Hollywood HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Mir24.ru" site_id="98">МИР 24</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MirSeriala.ru" site_id="209">Мир сериала</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MMATVcom.ru" site_id="1436">MMA-TV.com</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MosfilmGoldCollection.ru" site_id="1420">Мосфильм. Золотая коллекция</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MovieClassic.ru" site_id="97">Классика Кино</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MoyaPlaneta.ru" site_id="653">Моя Планета</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Moyastikhiya.ru" site_id="1531">Моя стихия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MTV90s.uk" site_id="1205">MTV 90s</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MTVHitsEurope.uk" site_id="1207">MTV Hits International</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MTVLive.uk" site_id="513">MTV Live International HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Mult.ru" site_id="1080">МУЛЬТ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Multilandia.ru" site_id="246">Мультиландия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Multimuzyka.ru" site_id="1440">Мультимузыка</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MusicBoxGold.ru" site_id="634">Music Box Gold</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Muzhskoekino.ru" site_id="1145">Мужское кино</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MuzhskoekinoHD.ru" site_id="1238">Мужское кино HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Muzhskoy.ru" site_id="1533">Мужской</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Muzhskoy.ru" site_id="412">Мужской</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MuzTV.ru" site_id="55">МУЗ-ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MuzykaPervogo.ru" site_id="671">Музыка Первого</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="MyZenTV.fr" site_id="434">myZen.tv</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Nano.ru" site_id="395">Нано</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Nashe.ru" site_id="1217">Наше HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="NashemuzhskoeHD.ru" site_id="1455">Наше Мужское HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="NasheNovoeKino.ru" site_id="565">Наше Новое Кино</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="NashKinopokazHD.ru" site_id="1451">Наш Кинопоказ HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Nauka.ru" site_id="674">Наука</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Nostalgia.ru" site_id="691">Ностальгия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="NovoeRadio.ru" site_id="1374">Новое радио</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="NovyyMir.ru" site_id="1220">Новый мир</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="NTVHit.ru" site_id="1468">НТВ Хит</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="NTVLaw.ru" site_id="92">НТВ Право</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="NTVMir.ru" site_id="531">НТВ-Мир</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="NTVSeries.ru" site_id="93">НТВ Сериал</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="NTVStyle.ru" site_id="94">НТВ Стиль</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="O.ru" site_id="1225">О!</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="o2tv.ru" site_id="107">О2ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="OceanTV.ru" site_id="71">Океан HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Ohotnikirybolov.ru" site_id="1185">Охотник и Рыболов HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="OhotnikirybolovInt.ru" site_id="69">Охотник и Рыболов Int</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Okhotairybalka.ru" site_id="621">Охота и рыбалка</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="OKino.ru" site_id="1332">О, Кино!</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Oruzhie.ru" site_id="511">Оружие</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Ostrosyuzhetnoye.ru" site_id="1149">Остросюжетное HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="OTV.ru" site_id="23">ОТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="PervyyKosmicheskiy.ru" site_id="1444">Первый Космический</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Pervyyvegetarianskiy.ru" site_id="212">Первый вегетарианский</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="PesiKo.ru" site_id="1266">Пёс и Ко</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="PlanB.ru" site_id="1442">Plan B</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Pobeda.ru" site_id="1355">ПОБЕДА</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Poehali.ru" site_id="1246">Поехали!</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Premialnoe.ru" site_id="1147">Премиальное</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Priklyucheniya.ru" site_id="499">Приключения HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ProBusiness.ru" site_id="58">Про Бизнес</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ProLyubov.ru" site_id="1448">Про Любовь</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Prosveshchenie.ru" site_id="658">Просвещение</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Psikhologiya.ru" site_id="538">Психология 21</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="QSport.kz" site_id="1429">Q Sport</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RadostMoya.ru" site_id="185">Радость Моя</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Ratnik.ru" site_id="110">Ратник</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RBKTV.ru" site_id="18">РБК</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RedLine.ru" site_id="208">Красная линия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Retro.ru" site_id="382">Ретро ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RodnoeKino.ru" site_id="386">Родное кино</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RT.ru" site_id="70">RT</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RTDocumentaryEnglish.ru" site_id="1258">RT Doc</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RTDocumentaryRussian.ru" site_id="82">RTД</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RTGHD.ru" site_id="168">Russian Travel Guide HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RTGint.ru" site_id="1169">RTG International</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RTGTV.ru" site_id="638">Russian Travel Guide</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RTVi.ru" site_id="169">RTVI</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Russia1.ru" site_id="65">Россия 1 HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RussianExtreme.ru" site_id="523">Russian Extreme</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RussianExtremeRetro.ru" site_id="1392">Русский Экстрим</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RussianExtremeUltra.ru" site_id="1229">Russian Extreme Ultra HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RussianMusicBox.ru" site_id="177">Music Box Russia</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RusskiyBestseller.ru" site_id="771">Русский бестселлер</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RusskiyDetektiv.ru" site_id="1137">Русский Детектив</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RusskiyIllusion.ru" site_id="402">Русский Иллюзион</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Russkiyroman.ru" site_id="520">Русский роман</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RUTV.ru" site_id="77">RU TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Ryzhiy.ru" site_id="1141">Рыжий</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="RZDTV.ru" site_id="575">РЖД</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Saphire.ru" site_id="1479">Сапфир</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Sarafan.ru" site_id="645">Сарафан</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="scifi.ru" site_id="576">.Sci-Fi</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ShansonTV.ru" site_id="644">Шансон-TB</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Shokiruyushchee.ru" site_id="432">Шокирующее</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ShotTV.ru" site_id="537">Shot TV</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="SmaylikTV.ru" site_id="1269">Смайлик ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="SONGTVArmenia.am" site_id="1331">SongTV Armenia</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="SONGTVRussia.ru" site_id="1346">SONGTV Russia</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="SonyChannel.ru" site_id="493">.Red</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="SonyTurbo.ru" site_id="744">.Black</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="SovetskoeKino.ru" site_id="229">Советское кино</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Soyuz.ru" site_id="108">Союз</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Spas.ru" site_id="52">Спас ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Sportivnyy.ru" site_id="1445">Спортивный</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Start.ru" site_id="103">Старт</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Sportivnyy.ru" site_id="1445">ТВ Спорт</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="STARTAir.ru" site_id="1465">START Air</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="StartTriumf.ru" site_id="1476">Старт Триумф</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="STARTWorld.ru" site_id="1466">START World</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="StingrayiConcerts.ca" site_id="739">Stingray iConcerts</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="StranaFM.ru" site_id="1251">Страна FM</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="STSInternational.ru" site_id="441">СТС International</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="STSkids.ru" site_id="1434">СТС Kids HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="STSLove.ru" site_id="104">СТС Love</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="SuperGeroi.ru" site_id="1469">СуперГерои</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Tayna.ru" site_id="1511">Тайна</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TaynyGalaktiki.ru" site_id="736">Тайны Галактики</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TBN.ru" site_id="601">ТБН</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Teatr.ru" site_id="737">Театр</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Telecafe.ru" site_id="443">Телекафе</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Teleputeshestviya.ru" site_id="697">Телепутешествия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TERRA.ru" site_id="1477">TERRA</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TiJi.ru" site_id="590">TiJi</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TimelessDiziChannel.ru" site_id="1526">Timeless Dizi Channel</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TNTInternational.ru" site_id="1240">ТНТ International</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TNTMusic.ru" site_id="655">ТНТ Music</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TNVPlanet.ru" site_id="188">ТНВ-планета</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TochkaTV.ru" site_id="68">Точка ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Tonus.ru" site_id="632">Тонус</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TopSecret.ru" site_id="57">Совершенно секретно</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TravelPlusAdventure.ru" site_id="773">Travel+Adventure</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TravelPlusAdventureHD.ru" site_id="793">Travel+Adventure HD</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TVBRICSRussian.ru" site_id="1268">TV BRICS</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TVCentr.ru" site_id="1410">ТВ Центр</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TVCentrInternational.ru" site_id="539">ТВ Центр-International</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TVMChannel.ru" site_id="112">TVMChannel</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TVTURTV.ru" site_id="157">ТВТУР</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="TVXXI.lv" site_id="492">ТВ21</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="UltraHDCinema.ru" site_id="1259">Ultra HD Cinema</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Unikum.ru" site_id="408">Уникум</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="UnknownRussia.ru" site_id="1535">Неизвестная Россия</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Usadba.ru" site_id="689">Усадьба</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Uspeh.ru" site_id="63">Успех</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Vgostyakhuskazki.ru" site_id="1506">В гостях у сказки</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="VH1ClassicEurope.uk" site_id="567">MTV 00s</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="vijuExplore.ru" site_id="579">viju Explore</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="vijuHistory.ru" site_id="478">viju History</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="vijuPlusComedy.ru" site_id="777">viju+ Comedy</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="vijuPlusMegahit.ru" site_id="778">viju+ Megahit</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="vijuPlusPlanet.ru" site_id="1372">viju+ Planet</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="vijuPlusPremiere.ru" site_id="779">viju+ Premiere</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="vijuPlusSerial.ru" site_id="1373">viju+ Serial</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="vijuPlusSport.ru" site_id="548">viju+ Sport</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="vijuTV1000.ru" site_id="1523">viju TV1000</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="vijuTV1000action.ru" site_id="1524">viju TV1000 action</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="vijuTV1000russkoe.ru" site_id="1525">viju TV1000 русское</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Vmirezhivotnykh.ru" site_id="1211">В мире животных</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Vremya.ru" site_id="649">Время</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="WorldBusinessChannel.ru" site_id="115">World Business Channel</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="WorldFashionChannel.ru" site_id="88">World Fashion Channel</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ZagorodnayaZhizn.ru" site_id="390">Загородная жизнь</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Zagorodnyy.ru" site_id="666">Загородный</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ZagorodnyyInt.ru" site_id="120">Загородный Int</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Zalsuda.ru" site_id="1422">Зал суда</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ZdorovoeTV.ru" site_id="609">Здоровое ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Zhara.ru" site_id="440">Жара</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ZharPtitsa.ru" site_id="174">Жар Птица</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ZhivayaPlaneta.ru" site_id="1134">Живая планета</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Zhivayapriroda.ru" site_id="1090">Живая природа</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Zhivi.ru" site_id="421">Живи!</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="Zoopark.ru" site_id="509">Zooпарк</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ZooTV.ru" site_id="477">Зоо ТВ</channel>
|
||||
<channel site="tv.yandex.ru" lang="ru" xmltv_id="ZvezdaPlus.ru" site_id="1431">Звезда Плюс</channel>
|
||||
</channels>
|
||||
|
|
|
@ -3,18 +3,19 @@ const debug = require('debug')('site:tv.yandex.ru')
|
|||
|
||||
// enable to fetch guide description but its take a longer time
|
||||
const detailedGuide = true
|
||||
const nworker = 10
|
||||
|
||||
// update this data by heading to https://tv.yandex.ru and change the values accordingly
|
||||
const cookies = {
|
||||
cycada: '3w11iWu+2+o6iIIiI/S1/k9lFIb6y+G6SW6hsbLoPJg=',
|
||||
i: '0nUBW1d6GpFmpLRIuHYGulEA4alIC2j4WS+WYGcusydL7lcrG9loWX8qrFEBOqg54KZxGwCVaZhZ1THYgoIo0T69iCY=',
|
||||
spravka: 'dD0xNzAxMjI3MTk1O2k9MzYuODQuOTguMTcxO0Q9Njk4NDQwRkRDODk5QUEzMDJCNzI5NTJBMTM4RTY2ODNEMzQyNkM1MjI5QTkyNDI3NUJGMzMzQUJEMUZFQjMyQzczM0I2QzE0QTRDQkJFODY5Nzk0MjhGNkEzQjQ5NDJBMzcxQzIzMjE3RTRENkVDOUU1NEE1RDVFNDg0RUQ1RTI3OUNGNzlCMEYzNzUyMDcyNDhGQkVCNkIyMDg5NTMwMzc1QkZEQTlGNEU7dT0xNzAxMjI3MTk1NDg5NDIyODkzO2g9OTRmN2FiNTMxZmJjNDg5MjM4ZDk4Y2ZkN2E0ZmY0YmI=',
|
||||
yandexuid: '7536067781700842414',
|
||||
yashr: '7271154091700842416',
|
||||
user_display: 696
|
||||
i: 'dkim62pClrWWC4CShVQYMpVw1ELNVw4XJdL/lzT4E2r05IgcST1GtCA4ho/UyGgW2AO4qftDfZzGX2OHqCzwY7GUkpM=',
|
||||
spravka: 'dD0xNzMyNjgzMTEwO2k9MTgwLjI0OC41OS40MDtEPTkyOUM2MkQ0Mzc3OUNBMUFCNzg3NTIyMEQ4OEJBMEVBMzQ2RUNGNUU5Q0FEQUM5RUVDMTFCNjc1ODA2MThEQTQ3RTY3RTUyRUNBRDdBMTY2OTY1MjMzRDU1QjNGMTc1MDA0NDM3MjBGMUNGQTM5RjA3OUQwRjE2MzQxMUNFOTgxQ0E0RjNGRjRGODNCMEM1QjlGNTg5RkI4NDk0NEM2QjNDQUQ5NkJGRTBFNTVCQ0Y1OTEzMEY0O3U9MTczMjY4MzExMDY3MTA1MzIzNDtoPTA1YWJmMTY0ZmI2MGViNTBhMDUwZWUwMThmYWNiYjhm',
|
||||
yandexuid: '1197179041732383499',
|
||||
yashr: '4682342911732383504',
|
||||
yuidss: '1197179041732383499',
|
||||
user_display: 930,
|
||||
}
|
||||
const headers = {
|
||||
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/118.0.0.0 Safari/537.36 OPR/104.0.0.0',
|
||||
'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/128.0.0.0 Safari/537.36 OPR/114.0.0.0',
|
||||
}
|
||||
const caches = {}
|
||||
|
||||
|
@ -85,19 +86,27 @@ module.exports = {
|
|||
async function fetchSchedules({ date, content = null }) {
|
||||
const schedules = []
|
||||
const queues = []
|
||||
const fetches = []
|
||||
const url = getUrl(date)
|
||||
|
||||
let mainApi
|
||||
// parse content as schedules and add to queue if more requests is needed
|
||||
const f = data => {
|
||||
const f = (data, src) => {
|
||||
if (src) {
|
||||
fetches.push(src)
|
||||
}
|
||||
const [q, s] = parseContent(data, date)
|
||||
if (!mainApi) {
|
||||
mainApi = true
|
||||
if (caches.region) {
|
||||
queues.push(`https://tv.yandex.ru/api/${caches.region}?date=${date.format('YYYY-MM-DD')}&grid=all&period=all-day`)
|
||||
queues.push(getUrl(date, caches.region))
|
||||
}
|
||||
}
|
||||
for (const url of q) {
|
||||
if (fetches.indexOf(url) < 0) {
|
||||
queues.push(url)
|
||||
}
|
||||
}
|
||||
queues.push(...q)
|
||||
schedules.push(...s)
|
||||
}
|
||||
// is main html already fetched?
|
||||
|
@ -120,7 +129,7 @@ async function fetchPrograms({ schedules, date, channel }) {
|
|||
queues.push(
|
||||
...schedule.events
|
||||
.filter(event => date.isSame(event.start, 'day'))
|
||||
.map(event => `https://tv.yandex.ru/api/${caches.region}/event?eventId=${event.id}&programCoId=`)
|
||||
.map(event => getUrl(null, caches.region, null, event))
|
||||
)
|
||||
})
|
||||
await doFetch(queues, getUrl(date), content => {
|
||||
|
@ -144,31 +153,60 @@ async function fetchPrograms({ schedules, date, channel }) {
|
|||
}
|
||||
|
||||
async function doFetch(queues, referer, cb) {
|
||||
const axios = require('axios')
|
||||
while (true) {
|
||||
if (!queues.length) {
|
||||
break
|
||||
if (queues.length) {
|
||||
const workers = []
|
||||
let n = Math.min(nworker, queues.length)
|
||||
while (workers.length < n) {
|
||||
const worker = () => {
|
||||
if (queues.length) {
|
||||
const url = queues.shift()
|
||||
debug(`Fetching ${url}`)
|
||||
const data = {
|
||||
'Origin': 'https://tv.yandex.ru',
|
||||
}
|
||||
if (referer) {
|
||||
data['Referer'] = referer
|
||||
}
|
||||
if (url.indexOf('api') > 0) {
|
||||
data['X-Requested-With'] = 'XMLHttpRequest'
|
||||
}
|
||||
const headers = getHeaders(data)
|
||||
doRequest(url, { headers })
|
||||
.then(res => {
|
||||
cb(res, url)
|
||||
worker()
|
||||
})
|
||||
} else {
|
||||
workers.splice(workers.indexOf(worker), 1)
|
||||
}
|
||||
}
|
||||
workers.push(worker)
|
||||
worker()
|
||||
}
|
||||
const url = queues.shift()
|
||||
debug(`Fetching ${url}`)
|
||||
const data = url.indexOf('api') > 0 ? {
|
||||
'Referer': referer,
|
||||
'Origin': 'https://tv.yandex.ru',
|
||||
'X-Requested-With': 'XMLHttpRequest'
|
||||
} : {}
|
||||
const params = { headers: getHeaders(data) }
|
||||
const content = await axios
|
||||
.get(url, params)
|
||||
.then(response => {
|
||||
parseCookies(response.headers)
|
||||
return response.data
|
||||
})
|
||||
.catch(err => console.error(err.message))
|
||||
|
||||
cb(content)
|
||||
await new Promise(resolve => {
|
||||
const interval = setInterval(() => {
|
||||
if (workers.length === 0) {
|
||||
clearInterval(interval)
|
||||
resolve()
|
||||
}
|
||||
}, 500)
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
async function doRequest(url, params) {
|
||||
const axios = require('axios')
|
||||
const content = await axios
|
||||
.get(url, params)
|
||||
.then(response => {
|
||||
parseCookies(response.headers)
|
||||
return response.data
|
||||
})
|
||||
.catch(err => console.error(err.message))
|
||||
|
||||
return content
|
||||
}
|
||||
|
||||
function parseContent(content, date, checkOnly = false) {
|
||||
const queues = []
|
||||
const schedules = []
|
||||
|
@ -186,7 +224,7 @@ function parseContent(content, date, checkOnly = false) {
|
|||
if (content.schedule) {
|
||||
// fetch next request based on schedule map
|
||||
if (Array.isArray(content.schedule.scheduleMap)) {
|
||||
queues.push(...content.schedule.scheduleMap.map(m => `https://tv.yandex.ru/api/${caches.region}/main/chunk?page=${m.id}&date=${date.format('YYYY-MM-DD')}&period=all-day&offset=${m.offset}&limit=${m.limit}`))
|
||||
queues.push(...content.schedule.scheduleMap.map(m => getUrl(date, caches.region, m)))
|
||||
}
|
||||
// find some schedules?
|
||||
if (Array.isArray(content.schedule.schedules)) {
|
||||
|
@ -244,10 +282,29 @@ function getSchedules(schedules) {
|
|||
|
||||
function getHeaders(data = {}) {
|
||||
return Object.assign({}, headers, {
|
||||
'Cookie': Object.keys(cookies).map(cookie => `${cookie}=${cookies[cookie]}`).join('; ')
|
||||
Cookie: Object.keys(cookies).map(cookie => `${cookie}=${cookies[cookie]}`).join('; ')
|
||||
}, data)
|
||||
}
|
||||
|
||||
function getUrl(date) {
|
||||
return `https://tv.yandex.ru/?date=${date.format('YYYY-MM-DD')}&grid=all&period=all-day`
|
||||
function getUrl(date, region = null, page = null, event = null) {
|
||||
let url = 'https://tv.yandex.ru/'
|
||||
if (region) {
|
||||
url += `api/${region}`
|
||||
}
|
||||
if (page && page.id !== undefined) {
|
||||
url += `${url.endsWith('/') ? '' : '/'}main/chunk?page=${page.id}`
|
||||
}
|
||||
if (event && event.id !== undefined) {
|
||||
url += `${url.endsWith('/') ? '' : '/'}event?eventId=${event.id}&programCoId=`
|
||||
}
|
||||
if (date) {
|
||||
url += `${url.indexOf('?') < 0 ? '?' : '&'}date=${date.format('YYYY-MM-DD')}${!page ? '&grid=all' : ''}&period=all-day`
|
||||
}
|
||||
if (page && page.id !== undefined && page.offset !== undefined) {
|
||||
url += `${url.indexOf('?') < 0 ? '?' : '&'}offset=${page.offset}`
|
||||
}
|
||||
if (page && page.id !== undefined && page.limit !== undefined) {
|
||||
url += `${url.indexOf('?') < 0 ? '?' : '&'}limit=${page.limit}`
|
||||
}
|
||||
return url
|
||||
}
|
|
@ -52,12 +52,12 @@ it('can generate valid url', () => {
|
|||
it('can generate valid request headers', () => {
|
||||
expect(request.headers).toMatchObject({
|
||||
Cookie:
|
||||
'cycada=3w11iWu+2+o6iIIiI/S1/k9lFIb6y+G6SW6hsbLoPJg=; ' +
|
||||
'i=0nUBW1d6GpFmpLRIuHYGulEA4alIC2j4WS+WYGcusydL7lcrG9loWX8qrFEBOqg54KZxGwCVaZhZ1THYgoIo0T69iCY=; ' +
|
||||
'spravka=dD0xNzAxMjI3MTk1O2k9MzYuODQuOTguMTcxO0Q9Njk4NDQwRkRDODk5QUEzMDJCNzI5NTJBMTM4RTY2ODNEMzQyNkM1MjI5QTkyNDI3NUJGMzMzQUJEMUZFQjMyQzczM0I2QzE0QTRDQkJFODY5Nzk0MjhGNkEzQjQ5NDJBMzcxQzIzMjE3RTRENkVDOUU1NEE1RDVFNDg0RUQ1RTI3OUNGNzlCMEYzNzUyMDcyNDhGQkVCNkIyMDg5NTMwMzc1QkZEQTlGNEU7dT0xNzAxMjI3MTk1NDg5NDIyODkzO2g9OTRmN2FiNTMxZmJjNDg5MjM4ZDk4Y2ZkN2E0ZmY0YmI=; ' +
|
||||
'yandexuid=7536067781700842414; ' +
|
||||
'yashr=7271154091700842416; ' +
|
||||
'user_display=696'
|
||||
'i=dkim62pClrWWC4CShVQYMpVw1ELNVw4XJdL/lzT4E2r05IgcST1GtCA4ho/UyGgW2AO4qftDfZzGX2OHqCzwY7GUkpM=; ' +
|
||||
'spravka=dD0xNzMyNjgzMTEwO2k9MTgwLjI0OC41OS40MDtEPTkyOUM2MkQ0Mzc3OUNBMUFCNzg3NTIyMEQ4OEJBMEVBMzQ2RUNGNUU5Q0FEQUM5RUVDMTFCNjc1ODA2MThEQTQ3RTY3RTUyRUNBRDdBMTY2OTY1MjMzRDU1QjNGMTc1MDA0NDM3MjBGMUNGQTM5RjA3OUQwRjE2MzQxMUNFOTgxQ0E0RjNGRjRGODNCMEM1QjlGNTg5RkI4NDk0NEM2QjNDQUQ5NkJGRTBFNTVCQ0Y1OTEzMEY0O3U9MTczMjY4MzExMDY3MTA1MzIzNDtoPTA1YWJmMTY0ZmI2MGViNTBhMDUwZWUwMThmYWNiYjhm; ' +
|
||||
'yandexuid=1197179041732383499; ' +
|
||||
'yashr=4682342911732383504; ' +
|
||||
'yuidss=1197179041732383499; ' +
|
||||
'user_display=930'
|
||||
})
|
||||
})
|
||||
|
||||
|
|
20968
sites/tvarenasport.com/__data__/content.html
Normal file
20968
sites/tvarenasport.com/__data__/content.html
Normal file
File diff suppressed because it is too large
Load diff
|
@ -1,15 +1,17 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport1Premium.rs" site_id="5710">Arena Sport Premium 1 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport1.rs" site_id="380">Arena Sport 1 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport1x2.rs" site_id="5347">Arena Sport 1x2 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport2Premium.rs" site_id="5711">Arena Sport Premium 2 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport2.rs" site_id="381">Arena Sport 2 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport3Premium.rs" site_id="5712">Arena Sport Premium 3 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport3.rs" site_id="382">Arena Sport 3 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport4.rs" site_id="383">Arena Sport 4 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport5.rs" site_id="384">Arena Sport 5 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport6.rs" site_id="5594">Arena Sport 6 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport7.rs" site_id="5595">Arena Sport 7 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport8.rs" site_id="5596">Arena Sport 8 Serbia</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport1.rs" site_id="01">Arena Sport 1</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport1Premium.rs" site_id="a1p">Arena 1 Premium</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport1x2.rs" site_id="1x2">Arena Sport 1x2</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport2.rs" site_id="02">Arena Sport 2</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport2Premium.rs" site_id="a2p">Arena 2 Premium</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport3.rs" site_id="03">Arena Sport 3</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport3Premium.rs" site_id="a3p">Arena 3 Premium</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport4.rs" site_id="04">Arena Sport 4</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport5.rs" site_id="05">Arena Sport 5</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport6.rs" site_id="06">Arena Sport 6</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport7.rs" site_id="07">Arena Sport 7</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport8.rs" site_id="08">Arena Sport 8</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport9.rs" site_id="09">Arena Sport 9</channel>
|
||||
<channel site="tvarenasport.com" lang="sr" xmltv_id="ArenaSport10.rs" site_id="10">Arena Sport 10</channel>
|
||||
</channels>
|
||||
|
|
|
@ -1,50 +1,123 @@
|
|||
const cheerio = require('cheerio')
|
||||
const axios = require('axios')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
|
||||
dayjs.extend(utc)
|
||||
dayjs.extend(timezone)
|
||||
dayjs.extend(customParseFormat)
|
||||
|
||||
const tz = 'Europe/Belgrade'
|
||||
|
||||
module.exports = {
|
||||
site: 'tvarenasport.com',
|
||||
days: 2,
|
||||
url: function ({ date }) {
|
||||
return `https://www.tvarenasport.com/api/schedule?date=${date.format('DD-MM-YYYY')}`
|
||||
request: {
|
||||
cache: {
|
||||
ttl: 24 * 60 * 60 * 1000 // 1 day
|
||||
}
|
||||
},
|
||||
parser: function ({ content, channel }) {
|
||||
let programs = []
|
||||
const items = parseItems(content, channel)
|
||||
items.forEach(item => {
|
||||
programs.push({
|
||||
title: item.title.trim(),
|
||||
category: item.league,
|
||||
description: item.sport.trim(),
|
||||
start: dayjs(item.start),
|
||||
stop: dayjs(item.end)
|
||||
url: 'https://www.tvarenasport.com/tv-scheme',
|
||||
parser({ content, channel, date }) {
|
||||
const programs = []
|
||||
const expectedDate = date.format('YYYY-MM-DD')
|
||||
if (content) {
|
||||
const dates = []
|
||||
const $ = cheerio.load(content)
|
||||
const parent = $(`.tv-scheme-chanel-header img[src*="chanel-${channel.site_id}.png"]`)
|
||||
.parents('div')
|
||||
parent
|
||||
.siblings('.tv-scheme-days')
|
||||
.find('a').toArray()
|
||||
.forEach(el => {
|
||||
const a = $(el)
|
||||
const dt = a.find('span:nth-child(3)').text()
|
||||
dates.push(dayjs(dt + date.year(), 'DD.MM.YYYY'))
|
||||
})
|
||||
parent
|
||||
.siblings('.tv-scheme-new-slider-wrapper')
|
||||
.find('.tv-scheme-new-slider-item').toArray()
|
||||
.forEach((el, i) => {
|
||||
programs.push(...parseSchedules($(el), dates[i]))
|
||||
})
|
||||
programs.forEach((s, i) => {
|
||||
if (i < programs.length - 2) {
|
||||
s.stop = programs[i + 1].start
|
||||
} else {
|
||||
s.stop = s.start.startOf('d').add(1, 'd')
|
||||
}
|
||||
})
|
||||
})
|
||||
}
|
||||
|
||||
return programs
|
||||
.filter(p => p.start.format('YYYY-MM-DD') === expectedDate || p.stop.format('YYYY-MM-DD') === expectedDate)
|
||||
},
|
||||
async channels() {
|
||||
const data = await axios
|
||||
.get('https://www.tvarenasport.com/api/schedule')
|
||||
.then(r => r.data)
|
||||
.catch(console.log)
|
||||
|
||||
const channels = []
|
||||
for (let id in data.channels) {
|
||||
const item = data.channels[id]
|
||||
channels.push({
|
||||
lang: 'sr',
|
||||
site_id: id,
|
||||
name: item.name
|
||||
})
|
||||
const data = await axios
|
||||
.get('https://www.tvarenasport.com/tv-scheme')
|
||||
.then(r => r.data)
|
||||
.catch(console.error)
|
||||
|
||||
if (data) {
|
||||
// channel naming rule
|
||||
const names = id => {
|
||||
let match = id.match(/^\d+$/)
|
||||
if (match) {
|
||||
return `Arena Sport ${parseInt(id)}`
|
||||
}
|
||||
match = id.match(/^\d/)
|
||||
if (match) {
|
||||
return `Arena Sport ${id}`
|
||||
}
|
||||
match = id.match(/^a(\d+)(p)?/)
|
||||
if (match) {
|
||||
return `Arena ${parseInt(match[1])}${match[2] === 'p' ? ' Premium' : ''}`
|
||||
}
|
||||
return `Arena ${id}`
|
||||
}
|
||||
const $ = cheerio.load(data)
|
||||
const items = $('.tv-scheme-chanel-header img').toArray()
|
||||
for (const item of items) {
|
||||
const [, id] = $(item).attr('src').match(/chanel-([a-z0-9]+)\.png/) || [null, null]
|
||||
if (id) {
|
||||
channels.push({
|
||||
lang: 'sr',
|
||||
site_id: id,
|
||||
name: names(id)
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return channels
|
||||
}
|
||||
}
|
||||
|
||||
function parseItems(content, channel) {
|
||||
const data = JSON.parse(content)
|
||||
if (!data || !Array.isArray(data.items)) return []
|
||||
function parseSchedules($s, date) {
|
||||
const schedules = []
|
||||
const $ = $s._make
|
||||
$s.find('.slider-content').toArray()
|
||||
.forEach(el => {
|
||||
schedules.push(parseSchedule($(el), date))
|
||||
})
|
||||
|
||||
return data.items.filter(i => i.group === channel.site_id)
|
||||
return schedules
|
||||
}
|
||||
|
||||
function parseSchedule($s, date) {
|
||||
const time = $s.find('.slider-content-top span').text()
|
||||
const start = dayjs.tz(`${date.format('YYYY-MM-DD')} ${time}`, 'YYYY-MM-DD HH:mm', tz)
|
||||
const category = $s.find('.slider-content-middle span').text()
|
||||
const title = $s.find('.slider-content-bottom p').text()
|
||||
const description = $s.find('.slider-content-bottom span:first').text()
|
||||
|
||||
return {
|
||||
title: description ? description : title,
|
||||
description: description ? title : description,
|
||||
category,
|
||||
start
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,45 +1,47 @@
|
|||
const { parser, url } = require('./tvarenasport.com.config.js')
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
|
||||
dayjs.extend(customParseFormat)
|
||||
dayjs.extend(utc)
|
||||
|
||||
const date = dayjs.utc('2021-11-17', 'YYYY-MM-DD').startOf('d')
|
||||
const date = dayjs.utc('2024-12-07', 'YYYY-MM-DD').startOf('d')
|
||||
const channel = {
|
||||
site_id: '380',
|
||||
xmltv_id: 'ArenaSport1.rs'
|
||||
site_id: 'a1p',
|
||||
xmltv_id: 'ArenaSport1Premium.rs'
|
||||
}
|
||||
|
||||
it('can generate valid url', () => {
|
||||
expect(url({ channel, date })).toBe('https://www.tvarenasport.com/api/schedule?date=17-11-2021')
|
||||
})
|
||||
|
||||
it('can parse response', () => {
|
||||
const content =
|
||||
'{"items":[{"id":2857,"title":"Crvena zvezda mts - Partizan NIS","start":"2021-11-16T23:30:00Z","end":"2021-11-17T01:30:00Z","sport":"ABA LIGA","league":"Ko\u0161arka","group":"380","isLive":false,"doNotMiss":false,"domain":"srb"},{"id":3155,"title":"Sao Paulo - Flamengo","start":"2021-11-17T00:00:00Z","end":"2021-11-17T02:00:00Z","sport":"BRAZILSKA LIGA","league":"Fudbal","group":"381","isLive":false,"doNotMiss":false,"domain":"srb"}]}'
|
||||
const result = parser({ channel, content }).map(p => {
|
||||
const content = fs.readFileSync(path.join(__dirname, '__data__', 'content.html'))
|
||||
const result = parser({ channel, date, content }).map(p => {
|
||||
p.start = p.start.toJSON()
|
||||
p.stop = p.stop.toJSON()
|
||||
return p
|
||||
})
|
||||
|
||||
expect(result).toMatchObject([
|
||||
{
|
||||
start: '2021-11-16T23:30:00.000Z',
|
||||
stop: '2021-11-17T01:30:00.000Z',
|
||||
title: 'Crvena zvezda mts - Partizan NIS',
|
||||
category: 'Ko\u0161arka',
|
||||
description: 'ABA LIGA'
|
||||
}
|
||||
])
|
||||
expect(result.length).toBe(19)
|
||||
expect(result[4]).toMatchObject({
|
||||
start: '2024-12-07T03:30:00.000Z',
|
||||
stop: '2024-12-07T05:00:00.000Z',
|
||||
title: 'EVROPSKO PRVENSTVO Ž',
|
||||
description: 'Francuska - Crna Gora',
|
||||
category: 'Rukomet',
|
||||
})
|
||||
expect(result[8]).toMatchObject({
|
||||
start: '2024-12-07T11:00:00.000Z',
|
||||
stop: '2024-12-07T11:05:00.000Z',
|
||||
title: 'Arena News',
|
||||
})
|
||||
})
|
||||
|
||||
it('can handle empty guide', () => {
|
||||
const result = parser({
|
||||
date,
|
||||
channel,
|
||||
content: '{"channels":[]}'
|
||||
content: ''
|
||||
})
|
||||
expect(result).toMatchObject([])
|
||||
})
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue