mirror of
https://github.com/iptv-org/epg.git
synced 2025-05-10 00:50:09 -04:00
Update ontvtonight.com
This commit is contained in:
parent
eaf72e0ae8
commit
2dafd22506
7 changed files with 5312 additions and 208 deletions
|
@ -8,20 +8,13 @@ dayjs.extend(utc)
|
|||
dayjs.extend(timezone)
|
||||
dayjs.extend(customParseFormat)
|
||||
|
||||
const tz = {
|
||||
au: 'Australia/Sydney',
|
||||
ie: 'Europe/Dublin',
|
||||
uk: 'Europe/London',
|
||||
us: 'America/New_York'
|
||||
}
|
||||
|
||||
module.exports = {
|
||||
site: 'ontvtonight.com',
|
||||
days: 2,
|
||||
url: function ({ date, channel }) {
|
||||
const [region, id] = channel.site_id.split('#')
|
||||
let url = 'https://www.ontvtonight.com'
|
||||
if (region) url += `/${region}`
|
||||
if (region && region !== 'us') url += `/${region}`
|
||||
url += `/guide/listings/channel/${id}.html?dt=${date.format('YYYY-MM-DD')}`
|
||||
|
||||
return url
|
||||
|
@ -50,16 +43,124 @@ module.exports = {
|
|||
})
|
||||
|
||||
return programs
|
||||
},
|
||||
async channels({ country }) {
|
||||
const axios = require('axios')
|
||||
const _ = require('lodash')
|
||||
|
||||
const providers = {
|
||||
au: ['o', 'a'],
|
||||
ca: [
|
||||
'Y464014423',
|
||||
'-464014503',
|
||||
'-464014594',
|
||||
'-464014738',
|
||||
'X3153330286',
|
||||
'X464014503',
|
||||
'X464013696',
|
||||
'X464014594',
|
||||
'X464014738',
|
||||
'X464014470',
|
||||
'X464013514',
|
||||
'X1210684931',
|
||||
'T3153330286',
|
||||
'T464014503',
|
||||
'T1810267316',
|
||||
'T1210684931'
|
||||
],
|
||||
us: [
|
||||
'Y341768590',
|
||||
'Y1693286984',
|
||||
'Y8833268284',
|
||||
'-341767428',
|
||||
'-341769166',
|
||||
'-341769884',
|
||||
'-3679985536',
|
||||
'-341766967',
|
||||
'X4100694897',
|
||||
'X341767428',
|
||||
'X341768182',
|
||||
'X341767434',
|
||||
'X341768272',
|
||||
'X341769884',
|
||||
'X3679985536',
|
||||
'X3679984937',
|
||||
'X341764975',
|
||||
'X3679985052',
|
||||
'X341766967',
|
||||
'K4805071612',
|
||||
'K5039655414'
|
||||
]
|
||||
}
|
||||
const regions = {
|
||||
au: [
|
||||
1, 2, 16, 15, 14, 13, 12, 11, 10, 9, 8, 7, 6, 5, 4, 3, 17, 18, 29, 28, 27, 26, 25, 23, 22,
|
||||
21, 20, 19, 24, 30, 31, 32, 33, 34, 35, 36, 39, 38, 37, 40, 41, 42, 43, 44, 45, 46, 47, 48,
|
||||
49, 50, 51, 52, 53
|
||||
],
|
||||
ca: [null],
|
||||
us: [null]
|
||||
}
|
||||
const zipcodes = {
|
||||
au: [null],
|
||||
ca: ['M5G1P5', 'H3B1X8', 'V6Z2H7', 'T2P3E6', 'T5J2Z2', 'K1P1B1'],
|
||||
us: [10199, 90052, 60607, 77201, 85026, 19104, 78284, 92199, 75260]
|
||||
}
|
||||
|
||||
const channels = []
|
||||
for (let provider of providers[country]) {
|
||||
for (let zipcode of zipcodes[country]) {
|
||||
for (let region of regions[country]) {
|
||||
let url = 'https://www.ontvtonight.com'
|
||||
if (country === 'us') url += '/guide/schedule'
|
||||
else url += `/${country}/guide/schedule`
|
||||
const data = await axios
|
||||
.post(url, null, {
|
||||
params: {
|
||||
provider,
|
||||
region,
|
||||
zipcode,
|
||||
TVperiod: 'Night',
|
||||
date: dayjs().format('YYYY-MM-DD'),
|
||||
st: 0,
|
||||
is_mobile: 1
|
||||
}
|
||||
})
|
||||
.then(r => r.data)
|
||||
.catch(console.log)
|
||||
|
||||
const $ = cheerio.load(data)
|
||||
$('.channelname').each((i, el) => {
|
||||
let name = $(el).find('center > a:eq(1)').text()
|
||||
name = name.replace(/\-\-/gi, '-')
|
||||
const url = $(el).find('center > a:eq(1)').attr('href')
|
||||
const [, number, slug] = url.match(/\/(\d+)\/(.*)\.html$/)
|
||||
|
||||
channels.push({
|
||||
lang: 'en',
|
||||
name,
|
||||
site_id: `${country}#${number}/${slug}`
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return _.uniqBy(channels, 'site_id')
|
||||
}
|
||||
}
|
||||
|
||||
function parseStart($item, date, channel) {
|
||||
const timezones = {
|
||||
au: 'Australia/Sydney',
|
||||
ca: 'America/Toronto',
|
||||
us: 'America/New_York'
|
||||
}
|
||||
const [region] = channel.site_id.split('#')
|
||||
const timezone = region ? tz[region] : tz['uk']
|
||||
const timeString = $item('td:nth-child(1) > h5').text().trim()
|
||||
const dateString = `${date.format('YYYY-MM-DD')} ${timeString}`
|
||||
|
||||
return dayjs.tz(dateString, 'YYYY-MM-DD H:mm a', timezone)
|
||||
return dayjs.tz(dateString, 'YYYY-MM-DD H:mm a', timezones[region])
|
||||
}
|
||||
|
||||
function parseTitle($item) {
|
||||
|
|
|
@ -1,5 +1,7 @@
|
|||
// npm run grab -- --site=ontvtonight.com
|
||||
// npm run grab -- --site=ontvtonight.com
|
||||
// npm run channels:parse -- --config=./sites/ontvtonight.com/ontvtonight.com.config.js --output=./sites/ontvtonight.com/ontvtonight.com_au.channels.xml --set=country:au
|
||||
// npm run channels:parse -- --config=./sites/ontvtonight.com/ontvtonight.com.config.js --output=./sites/ontvtonight.com/ontvtonight.com_ca.channels.xml --set=country:ca
|
||||
// npm run channels:parse -- --config=./sites/ontvtonight.com/ontvtonight.com.config.js --output=./sites/ontvtonight.com/ontvtonight.com_us.channels.xml --set=country:us
|
||||
// npm run grab -- --channels=./sites/ontvtonight.com/ontvtonight.com_ca.channels.xml
|
||||
|
||||
const { parser, url } = require('./ontvtonight.com.config.js')
|
||||
const dayjs = require('dayjs')
|
||||
|
|
File diff suppressed because it is too large
Load diff
1482
sites/ontvtonight.com/ontvtonight.com_ca.channels.xml
Normal file
1482
sites/ontvtonight.com/ontvtonight.com_ca.channels.xml
Normal file
File diff suppressed because it is too large
Load diff
|
@ -1,6 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="OireachtasTV.ie" site_id="ie#69044129/oireachtas-tv">Oireachtas TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="RTENews.ie" site_id="ie#69042526/rte-news-now">RTÉ News</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="TG4.ie" site_id="ie#69037081/tg4-t-na-g">TG 4</channel>
|
||||
</channels>
|
|
@ -1,101 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<!-- <channel site="ontvtonight.com" lang="en" xmltv_id="" site_id="uk#69041727/ideal-extra">Ideal Extra</channel> -->
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="4seven.uk" site_id="uk#69045786/4seven">4Seven</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="5Action.uk" site_id="uk#6311243774/5-action">5 Action</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="5SELECT.uk" site_id="uk#937022419/5select">5 Select</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="5STAR.uk" site_id="uk#69035187/5star">5 Star</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="5USA.uk" site_id="uk#69035191/five-us">5 USA</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="92NewsHD.pk" site_id="uk#5627466457/92-news">92 News</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="AhlulbaytTV.uk" site_id="uk#69041391/ahlulbayt-tv">Ahlulbayt TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="AkaalChannel.uk" site_id="uk#756379060/akaal-channel">Akaal Channel UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="AlJazeeraEnglish.qa" site_id="uk#69035251/al-jazeera-english">Aljazeera English</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="BBCFour.uk" site_id="uk#69035379/bbc-four">BBC Four</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="BBCNews.uk" site_id="uk#69035345/bbc-news">BBC News</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="BBCOne.uk" site_id="uk#69038686/bbc-1-hdtv">BBC One</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="BBCOneLondon.uk" site_id="uk#69035334/bbc-1-london">BBC One London</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="BBCOneScotland.uk" site_id="uk#69035339/bbc-1-scotland">BBC One Scotland</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="BBCParliament.uk" site_id="uk#69035446/bbc-parliament">BBC Parliament</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="BBCRedButton1.uk" site_id="uk#69035378/bbc-red-button-1">BBC Red Button 1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="BBCTwo.uk" site_id="uk#69035372/bbc-2">BBC Two</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Blaze.uk" site_id="uk#4006438889/blaze">Blaze UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="BoxHits.uk" site_id="uk#3595458201/box-hits">Box Hits</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="BritAsiaTV.uk" site_id="uk#69041685/brit-asia-tv">Brit Asia TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="CBBC.uk" site_id="uk#69035514/cbbc">CBBC</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="CBeebies.uk" site_id="uk#69035398/cbeebies">CBeebies UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="RealityXtra.uk" site_id="uk#69041400/cbs-drama">CBS Drama UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="CBSJustice.uk" site_id="uk#69041399/cbs-justice">CBS Justice UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="CBSReality.uk" site_id="uk#3252588388/cbs-reality-united-kingdom">CBS Reality UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Challenge.uk" site_id="uk#69035904/challenge-tv">Challenge UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="ChallengePlus1.uk" site_id="uk#69041220/challenge-1">Challenge +1 UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Channel5.uk" site_id="uk#69035571/channel-5">Channel 5</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Channel5Plus1.uk" site_id="uk#69044074/channel-5-1">Channel 5 +1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="CITV.uk" site_id="uk#69035594/citv">CITV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="CreateandCraft.uk" site_id="uk#69039491/create-craft">Create and Craft</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Cruise1stTV.uk" site_id="uk#7775078572/cruise-1sttv">Cruise 1st TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Dave.uk" site_id="uk#69035716/dave">Dave UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Davejavu.uk" site_id="uk#69045522/dave-ja-vu-freeview">Dave ja vu</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="DMAX.uk" site_id="uk#863385169/discovery-dmax-uk">DMAX UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Drama.uk" site_id="uk#664631766/drama">Drama UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="DramaPlus1.uk" site_id="uk#7774907383/drama-1">Drama UK +1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="E4.uk" site_id="uk#69035831/e4">E4 UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="E4Extra.uk" site_id="uk#69036010/e4-extra">E4 Extra</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="E4Plus1.uk" site_id="uk#69035812/e41">E4 UK +1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="EmanChannel.uk" site_id="uk#1511654913/eman-tv">Eman Channel</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Film4.uk" site_id="uk#69035909/film4">Film 4 UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Film4Plus1.uk" site_id="uk#69035897/film41">Film 4 UK +1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="FoodNetwork.uk" site_id="uk#69039463/food-network-uk">Food Network UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="GemsTV.uk" site_id="uk#69039490/gems-tv">Gems TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="GREATmovies.uk" site_id="uk#69046254/great-movies">Great! Movies</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="GREATaction.uk" site_id="uk#69041512/great-movies-action">Great! Movies Action</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="GREATromance.uk" site_id="uk#69041290/great-movies-classic">Great! Movies Classic</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="GREATromancePlus1.uk" site_id="uk#69039341/great-movies-classic1">Great! Movies Classic +1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="GREATtv.uk" site_id="uk#69041546/great-tv">Great! TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="GREATtvPlus1.uk" site_id="uk#69036832/great-tv1">Great! TV +1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="HGTV.uk" site_id="uk#69037265/hgtv">HGTV UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="IdealWorldTV.uk" site_id="uk#69036047/ideal-world">Ideal World</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="ITV1.uk" site_id="uk#69036056/itv-london">ITV London</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="ITV2.uk" site_id="uk#69036076/itv2">ITV 2</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="ITV2Plus1.uk" site_id="uk#69036040/itv21">ITV 2 +1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="ITV3.uk" site_id="uk#69036077/itv3">ITV 3</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="ITV3Plus1.uk" site_id="uk#69041275/itv3-1">ITV 3 +1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="ITV4.uk" site_id="uk#69036078/itv4">ITV 4</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="ITV4Plus1.uk" site_id="uk#69041276/itv4-1">ITV 4 +1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="ITVBe.uk" site_id="uk#1207930957/itvbe">ITV Be</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="JewelleryMaker.uk" site_id="uk#4515130174/jewellery-maker">Jewellery Maker</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="KanshiTV.uk" site_id="uk#5073537893/kanshi-tv">Kanshi TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="KTO.fr" site_id="uk#69036171/kto-la-chaine-catholique">KTO</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Legend.uk" site_id="uk#69040564/horror-channel-uk">Horror Channel UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="LondonLive.uk" site_id="uk#950961703/london-live">London Live</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="More4.uk" site_id="uk#69036330/more4">More 4 UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Now80s.uk" site_id="uk#804653420/now-80s">Now 80's</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="PBSAmerica.uk" site_id="uk#69044017/pbs-america">PBS America</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="SkyMix.uk" site_id="uk#69036986/pick-tv">Pick UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Pop.uk" site_id="uk#69040588/pop">Pop</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="QuestRed.uk" site_id="uk#4606690382/quest-red">Quest Red UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="QuestRedPlus1.uk" site_id="uk#4645499309/quest-red1">Quest Red UK +1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Quest.uk" site_id="uk#69035787/quest">Quest UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="QuestPlus1.uk" site_id="uk#69041602/quest-1">Quest UK +1</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="QVCBeauty.uk" site_id="uk#69041735/qvc-beauty">QVC Beauty</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="QVCStyle.uk" site_id="uk#441168765/qvc-style">QVC Style UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="QVC.uk" site_id="uk#69036651/qvc-uk">QVC UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="RacingTV.uk" site_id="uk#69040591/racing-uk">Racing TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Really.uk" site_id="uk#69037274/really">Really UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="RT.ru" site_id="uk#322672042/rt-english-hdtv">RT News</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="RTUK.uk" site_id="uk#69036669/russia-today">RT UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="SangatTV.uk" site_id="uk#69042021/sangat">Sangat TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="SBNTVInternational.us" site_id="uk#69043552/sonlife-network-eu">SBN International</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="SkyArts.uk" site_id="uk#69035314/sky-arts">Sky Arts UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="SkyMax.uk" site_id="uk#69036865/sky-max">Sky Max UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="SmithsonianChannel.uk" site_id="uk#7051414680/smithsonian">Smithsonian Channel UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="MusicMemories.uk" site_id="uk#7497801352/spotlight-tv">Spotlight TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="TalkingPicturesTV.uk" site_id="uk#1632302783/talking-pictures-tv">Talking Pictures TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="TBNUK.uk" site_id="uk#7551679520/tbn-uk">TBN UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="TheBox.uk" site_id="uk#69037030/the-box">The Box UK</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="TinyPop.uk" site_id="uk#69040600/tiny-pop">Tiny Pop</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="TJC.uk" site_id="uk#1652397656/jewellery-channel">TJC</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="TogetherTV.uk" site_id="uk#69035699/together-tv">Together TV</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="ViaplayXtra.uk" site_id="uk#5310705194/freesports">ViaplayXtra</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="Yesterday.uk" site_id="uk#69037260/yesterday">Yesterday</channel>
|
||||
<channel site="ontvtonight.com" lang="en" xmltv_id="YesterdayPlus1.uk" site_id="uk#69041611/yesterday-1">Yesterday +1</channel>
|
||||
</channels>
|
File diff suppressed because it is too large
Load diff
Loading…
Add table
Add a link
Reference in a new issue