Merge branch 'iptv-org:master' into master

This commit is contained in:
ajanes3
2023-01-25 20:18:53 -05:00
committed by GitHub
24 changed files with 8941 additions and 176 deletions

View File

@@ -9,7 +9,7 @@ dayjs.extend(customParseFormat)
module.exports = {
site: 'abc.net.au',
days: 2,
days: 3,
request: {
cache: {
ttl: 60 * 60 * 1000 // 1 hour

View File

@@ -3,6 +3,7 @@
<channels>
<channel lang="da" xmltv_id="6eren.dk" site_id="dk#568">6&apos;eren</channel>
<channel lang="da" xmltv_id="BoomerangNordic.uk" site_id="dk#0017">Boomerang Nordic</channel>
<channel lang="da" xmltv_id="Canal9.dk" site_id="dk#0368">Canal 9</channel>
<channel lang="da" xmltv_id="CartoonNetworkScandinavia.uk" site_id="dk#0028">Cartoon Network Nordic</channel>
<channel lang="da" xmltv_id="CMoreFirst.se" site_id="dk#968">C More First</channel>
<channel lang="da" xmltv_id="CMoreHits.se" site_id="dk#969">C More Hits</channel>
@@ -59,7 +60,6 @@
<channel lang="da" xmltv_id="Xee.dk" site_id="dk#707">Xee</channel>
<channel lang="en" xmltv_id="AlJazeeraEnglish.qa" site_id="dk#0344">Aljazeera English</channel>
<channel lang="en" xmltv_id="BBCWorldNewsEurope.uk" site_id="dk#0016">BBC World News Europe</channel>
<channel lang="en" xmltv_id="Canal9.dk" site_id="dk#0368">Canal 9</channel>
<channel lang="en" xmltv_id="CNBCEurope.uk" site_id="dk#0032">CNBC Europe</channel>
<channel lang="en" xmltv_id="CNNInternationalEurope.us" site_id="dk#0033">CNN International Europe</channel>
</channels>

View File

@@ -0,0 +1,386 @@
<ul class="sc_day">
<li onclick="setWeek('prev');"> < </li>
<li onclick="setDay('2023-01-23');" class="">
<span>01.23</span>
<p></p>
</li>
<li onclick="setDay('2023-01-24');" class=""><!-- 선택된 편성표 요일에 클래스 부여 -->
<span>01.24</span>
<p></p>
</li>
<li onclick="setDay('2023-01-25');" class="">
<span>01.25</span>
<p></p>
</li>
<li onclick="setDay('2023-01-26');" class="on">
<span>01.26</span>
<p></p>
</li>
<li onclick="setDay('2023-01-27');" class="">
<span>01.27</span>
<p></p>
</li>
<li onclick="setDay('2023-01-28');" class="">
<span>01.28</span>
<p></p>
</li>
<li onclick="setDay('2023-01-29');" class="">
<span>01.29</span>
<p></p>
</li>
<li onclick="setWeek('next');"> > </li>
</ul>
<dl class="sc_time">
<dt>
<span>시간</span>
<span>장르</span>
<span>프로그램</span>
<span>회차</span>
<span>세부정보</span>
<span>방송시간</span>
</dt>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>00:00</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
더트롯쇼 </span>
<span>36회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p class="on"></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>60분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>01:00</span>
<span><p class="sc_col2">교양</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
특종세상 </span>
<span>21회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p class="on"></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>70분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>02:10</span>
<span><p class="sc_col2">교양</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
특종세상 </span>
<span>22회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p class="on"></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>70분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>03:20</span>
<span><p class="sc_col2">교양</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
나는 자연인이다 </span>
<span>124회</span>
<span>
<p class="sc_year1">
ALL </p>
<p class="on">HD</p><!-- 화질 -->
<p ></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>70분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>04:30</span>
<span><p >패션/뷰티</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
탑시크릿란제리HD </span>
<span>1회</span>
<span>
<p class="sc_year4">
19 </p>
<p class="on">HD</p><!-- 화질 -->
<p class="on"></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p class="on">Original</p><!-- 자체 -->
</span>
<span>30분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>05:00</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
SALON INTERNATIONAL DE LA LINGERIE </span>
<span>7회</span>
<span>
<p class="sc_year4">
19 </p>
<p class="on">HD</p><!-- 화질 -->
<p class="on"></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p class="on">Original</p><!-- 자체 -->
</span>
<span>30분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>05:30</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
노컷 란제리 페스티벌 </span>
<span>14회</span>
<span>
<p class="sc_year4">
19 </p>
<p class="on">HD</p><!-- 화질 -->
<p class="on"></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>60분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>06:30</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
요가에 빠지다 </span>
<span>7회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p class="on"></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p class="on">Original</p><!-- 자체 -->
</span>
<span>40분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>07:10</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
이제 만나러 갑니다 </span>
<span>20회</span>
<span>
<p class="sc_year2">
12 </p>
<p class="on">HD</p><!-- 화질 -->
<p class="on"></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>70분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>08:20</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
미스터트롯 영웅들의 탄생 </span>
<span>5회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p ></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>100분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>10:00</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
미스터트롯 영웅들의 탄생 </span>
<span>6회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p ></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>100분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>11:40</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
불타는 트롯맨 5 </span>
<span>3회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p ></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>80분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>13:00</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
화요일은 밤이 좋아 </span>
<span>17회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p class="on"></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>130분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>15:10</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
불타는 트롯맨 6 </span>
<span>3회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p ></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>110분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>17:00</span>
<span><p class="sc_col2">교양</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
행복한 힐링 메이트 </span>
<span>41회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p ></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>60분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>18:00</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
내일은 미스트롯 2 </span>
<span>7회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p class="on"></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>180분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>21:00</span>
<span><p >연예/오락</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
불타는 트롯맨 3 </span>
<span>2회</span>
<span>
<p class="sc_year3">
15 </p>
<p class="on">HD</p><!-- 화질 -->
<p ></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>110분</span>
</dd>
<dd class=""><!-- onair 시 class="on" 추가 -->
<span>22:50</span>
<span><p class="sc_col2">교양</p></span>
<span class="sdfsdf">
<script>
document.writeln($('.sc_time').val("outerWidth : " + $(".sdfsdf").outerWidth()););
</script>
나는 자연인이다 </span>
<span>154회</span>
<span>
<p class="sc_year1">
ALL </p>
<p class="on">HD</p><!-- 화질 -->
<p class="on"></p><!-- 본/재방 -->
<p ></p><!-- 생방송 -->
<p >Original</p><!-- 자체 -->
</span>
<span>70분</span>
</dd>
</dl>

View File

@@ -0,0 +1,44 @@
<ul class="sc_day">
<li onclick="setWeek('prev');"> < </li>
<li onclick="setDay('2023-01-23');" class="">
<span>01.23</span>
<p></p>
</li>
<li onclick="setDay('2023-01-24');" class=""><!-- 선택된 편성표 요일에 클래스 부여 -->
<span>01.24</span>
<p></p>
</li>
<li onclick="setDay('2023-01-25');" class="">
<span>01.25</span>
<p></p>
</li>
<li onclick="setDay('2023-01-26');" class="on">
<span>01.26</span>
<p></p>
</li>
<li onclick="setDay('2023-01-27');" class="">
<span>01.27</span>
<p></p>
</li>
<li onclick="setDay('2023-01-28');" class="">
<span>01.28</span>
<p></p>
</li>
<li onclick="setDay('2023-01-29');" class="">
<span>01.29</span>
<p></p>
</li>
<li onclick="setWeek('next');"> > </li>
</ul>
<dl class="sc_time">
<dt>
<span>시간</span>
<span>장르</span>
<span>프로그램</span>
<span>회차</span>
<span>세부정보</span>
<span>방송시간</span>
</dt>
<div><img src="/img/noschedule.jpg"></div></dl>

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<site site="berrymedia.co.kr">
<channels>
<channel lang="ko" xmltv_id="BallTV.kr" site_id="6">BallTV</channel>
<channel lang="ko" xmltv_id="CookTV.kr" site_id="2">CookTV</channel>
<channel lang="ko" xmltv_id="GMTV.kr" site_id="4">GMTV</channel>
<channel lang="ko" xmltv_id="GTV.kr" site_id="">GTV</channel>
<channel lang="ko" xmltv_id="LifeSportsTV.kr" site_id="3">생활체육TV</channel>
<channel lang="ko" xmltv_id="UHDDreamTV.kr" site_id="5">UHDDreamTV</channel>
</channels>
</site>

View File

@@ -0,0 +1,93 @@
const cheerio = require('cheerio')
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)
dayjs.Ls.en.weekStart = 1
module.exports = {
site: 'berrymedia.co.kr',
days: 2,
url({ channel }) {
return `http://www.berrymedia.co.kr/schedule_proc${channel.site_id}.php`
},
request: {
method: 'POST',
headers: {
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
'X-Requested-With': 'XMLHttpRequest'
},
data({ date }) {
let params = new URLSearchParams()
let startOfWeek = date.startOf('week').format('YYYY-MM-DD')
let endOfWeek = date.endOf('week').format('YYYY-MM-DD')
params.append('week', `${startOfWeek}~${endOfWeek}`)
params.append('day', date.format('YYYY-MM-DD'))
return params
}
},
parser({ content, date }) {
const programs = []
const items = parseItems(content)
items.forEach(item => {
const $item = cheerio.load(item)
const prev = programs[programs.length - 1]
let start = parseStart($item, date)
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),
category: parseCategory($item),
rating: parseRating($item),
start,
stop
})
})
return programs
}
}
function parseStart($item, date) {
const time = $item('span:nth-child(1)').text().trim()
return dayjs.tz(`${date.format('YYYY-MM-DD')} ${time}`, 'YYYY-MM-DD HH:mm', 'Asia/Seoul')
}
function parseTitle($item) {
return $item('span.sdfsdf').clone().children().remove().end().text().trim()
}
function parseCategory($item) {
return $item('span:nth-child(2) > p').text().trim()
}
function parseRating($item) {
const rating = $item('span:nth-child(5) > p:nth-child(1)').text().trim()
return rating
? {
system: 'KMRB',
value: rating
}
: null
}
function parseItems(content, channel, date) {
const $ = cheerio.load(content)
return $('.sc_time dd').toArray()
}

View File

@@ -0,0 +1,79 @@
// npx epg-grabber --config=sites/berrymedia.co.kr/berrymedia.co.kr.config.js --channels=sites/berrymedia.co.kr/berrymedia.co.kr.channels.xml --output=guide.xml --days=2
const { parser, url, request } = require('./berrymedia.co.kr.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('2023-01-26', 'YYYY-MM-DD').startOf('d')
const channel = {
site_id: '',
xmltv_id: 'GTV.kr'
}
it('can generate valid url', () => {
expect(url({ channel })).toBe('http://www.berrymedia.co.kr/schedule_proc.php')
})
it('can generate request method', () => {
expect(request.method).toBe('POST')
})
it('can generate valid request headers', () => {
expect(request.headers).toMatchObject({
'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
'X-Requested-With': 'XMLHttpRequest'
})
})
it('can generate valid request data', () => {
let params = request.data({ date })
expect(params.get('week')).toBe('2023-01-23~2023-01-29')
expect(params.get('day')).toBe('2023-01-26')
})
it('can parse response', () => {
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.html'), 'utf8')
let results = parser({ content, date })
results = results.map(p => {
p.start = p.start.toJSON()
p.stop = p.stop.toJSON()
return p
})
expect(results[0]).toMatchObject({
start: '2023-01-25T15:00:00.000Z',
stop: '2023-01-25T16:00:00.000Z',
title: `더트롯쇼`,
category: '연예/오락',
rating: {
system: 'KMRB',
value: '15'
}
})
expect(results[17]).toMatchObject({
start: '2023-01-26T13:50:00.000Z',
stop: '2023-01-26T14:20:00.000Z',
title: `나는 자연인이다`,
category: '교양',
rating: {
system: 'KMRB',
value: 'ALL'
}
})
})
it('can handle empty guide', () => {
const results = parser({
date,
content: fs.readFileSync(path.resolve(__dirname, '__data__/no_content.html'), 'utf8')
})
expect(results).toMatchObject([])
})

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,11 @@
<?xml version="1.0" encoding="UTF-8"?>
<site site="ena.skylifetv.co.kr">
<channels>
<channel lang="ko" xmltv_id="ENA.kr" site_id="ENA">ENA</channel>
<channel lang="ko" xmltv_id="ENAPLAY.kr" site_id="ENA_PLAY">ENA PLAY</channel>
<channel lang="ko" xmltv_id="KidsTalkTalkPlus.kr" site_id="kidstalktalkplus">kids talk talk plus</channel>
<channel lang="ko" xmltv_id="OLIFE.kr" site_id="OLIFE">OLIFE</channel>
<channel lang="ko" xmltv_id="ONCE.kr" site_id="ONCE">ONCE</channel>
<channel lang="ko" xmltv_id="skyUHD.kr" site_id="skyUHD">skyUHD</channel>
</channels>
</site>

View File

@@ -0,0 +1,68 @@
const cheerio = require('cheerio')
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)
module.exports = {
site: 'ena.skylifetv.co.kr',
days: 2,
url({ channel, date }) {
return `http://ena.skylifetv.co.kr/${channel.site_id}/?day=${date.format('YYYYMMDD')}&sc_dvsn=U`
},
parser({ content, date }) {
const programs = []
const items = parseItems(content, date)
items.forEach(item => {
const $item = cheerio.load(item)
const start = parseStart($item, date)
const duration = parseDuration($item)
const stop = start.add(duration, 'm')
programs.push({
title: parseTitle($item),
rating: parseRating($item),
start,
stop
})
})
return programs
}
}
function parseTitle($item) {
return $item('.col2 > .tit').text().trim()
}
function parseRating($item) {
const rating = $item('.col4').text().trim()
return rating
? {
system: 'KMRB',
value: rating
}
: null
}
function parseDuration($item) {
const duration = $item('.col5').text().trim()
return duration ? parseInt(duration) : 30
}
function parseStart($item, date) {
const time = $item('.col1').text().trim()
return dayjs.tz(`${date.format('YYYY-MM-DD')} ${time}`, 'YYYY-MM-DD HH:mm', 'Asia/Seoul')
}
function parseItems(content, channel, date) {
const $ = cheerio.load(content)
return $('.tbl_schedule > tbody > tr').toArray()
}

View File

@@ -0,0 +1,59 @@
// npx epg-grabber --config=sites/ena.skylifetv.co.kr/ena.skylifetv.co.kr.config.js --channels=sites/ena.skylifetv.co.kr/ena.skylifetv.co.kr.channels.xml --output=guide.xml --days=2
const { parser, url } = require('./ena.skylifetv.co.kr.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('2023-01-27', 'YYYY-MM-DD').startOf('d')
const channel = {
site_id: 'ENA',
xmltv_id: 'ENA.kr'
}
it('can generate valid url', () => {
expect(url({ channel, date })).toBe('http://ena.skylifetv.co.kr/ENA/?day=20230127&sc_dvsn=U')
})
it('can parse response', () => {
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.html'), 'utf8')
let results = parser({ content, date })
results = results.map(p => {
p.start = p.start.toJSON()
p.stop = p.stop.toJSON()
return p
})
expect(results[0]).toMatchObject({
start: '2023-01-26T16:05:00.000Z',
stop: '2023-01-26T17:20:00.000Z',
title: `법쩐 6화`,
rating: {
system: 'KMRB',
value: '15'
}
})
expect(results[17]).toMatchObject({
start: '2023-01-27T14:10:00.000Z',
stop: '2023-01-27T15:25:00.000Z',
title: `남이 될 수 있을까 4화`,
rating: {
system: 'KMRB',
value: '15'
}
})
})
it('can handle empty guide', () => {
const results = parser({
date,
content: fs.readFileSync(path.resolve(__dirname, '__data__/no_content.html'), 'utf8')
})
expect(results).toMatchObject([])
})

View File

@@ -2,7 +2,7 @@ const dayjs = require('dayjs')
module.exports = {
site: 'foxsports.com.au',
days: 2,
days: 3,
request: {
cache: {
ttl: 60 * 60 * 1000 // 1 hour

View File

@@ -1,153 +1,153 @@
<?xml version="1.0" encoding="UTF-8"?>
<site site="indihometv.com">
<channels>
<channel lang="id" xmltv_id="UseePrime.id" site_id="useeprime">UseePrime</channel>
<channel lang="id" xmltv_id="UseePhoto.id" site_id="useephoto">Usee Photo</channel>
<channel lang="id" xmltv_id="IndiKids.id" site_id="indikids">IndiKids</channel>
<channel lang="id" xmltv_id="RuangTrampil.id" site_id="useeinfo">Ruang Trampil</channel>
<channel lang="id" xmltv_id="SEAToday.id" site_id="seatoday">SEA Today</channel>
<channel lang="id" xmltv_id="Trans7.id" site_id="trans7">Trans7</channel>
<channel lang="id" xmltv_id="TransTV.id" site_id="transtv">TransTV</channel>
<channel lang="id" xmltv_id="ANTV.id" site_id="antv">ANTV</channel>
<channel lang="id" xmltv_id="tvOne.id" site_id="tvone">TV One</channel>
<channel lang="id" xmltv_id="MetroTV.id" site_id="metrotv">Metro TV</channel>
<channel lang="id" xmltv_id="KompasTV.id" site_id="kompastv">Kompas TV</channel>
<channel lang="id" xmltv_id="INews.id" site_id="inews">iNews</channel>
<channel lang="id" xmltv_id="TVRINasional.id" site_id="tvri">TVRI</channel>
<channel lang="id" xmltv_id="RajawaliTV.id" site_id="rtv">Rajawali TV</channel>
<channel lang="id" xmltv_id="RodjaTV.id" site_id="rodjatv">Rodja TV</channel>
<channel lang="id" xmltv_id="JTV.id" site_id="jtv">JTV</channel>
<channel lang="id" xmltv_id="MNCNews.id" site_id="mncnews">MNC News</channel>
<channel lang="id" xmltv_id="BeritaSatu.id" site_id="beritasatu">Berita Satu</channel>
<channel lang="id" xmltv_id="RRINet.id" site_id="rrinet">RRI NET</channel>
<channel lang="id" xmltv_id="BaliTV.id" site_id="balitv">Bali TV</channel>
<channel lang="id" xmltv_id="MQTV.id" site_id="mqtv">MQTV</channel>
<channel lang="id" xmltv_id="MTATV.id" site_id="mtatv">MTATV</channel>
<!-- <channel lang="id" xmltv_id="AlQuranKareem.id" site_id="alquran">AlQuran Kareem</channel> -->
<channel lang="id" xmltv_id="JakTV.id" site_id="jaktv">JakTV</channel>
<channel lang="id" xmltv_id="NusantaraTV.id" site_id="nusantaratv">Nusantara TV</channel>
<!-- <channel lang="id" xmltv_id="Antara.id" site_id="antara">Antara</channel> -->
<!-- <channel lang="id" xmltv_id="MuhammadiyahTV.id" site_id="muhammadiyahtv">Muhammadiyah TV</channel> -->
<!-- <channel lang="id" xmltv_id="Prambors.id" site_id="pramborstv">Prambors</channel> -->
<channel lang="id" xmltv_id="TVEdukasi.id" site_id="tvedukasi">TV Edukasi</channel>
<channel lang="id" xmltv_id="ArirangTV.kr" site_id="arirang">Arirang</channel>
<channel lang="id" xmltv_id="TVMUI.id" site_id="muitv">MUI TV</channel>
<channel lang="id" xmltv_id="TawafTV.id" site_id="tawaftv">Tawaf TV</channel>
<channel lang="id" xmltv_id="TV9Nusantara.id" site_id="tv9">TV9 NU</channel>
<!-- <channel lang="id" xmltv_id="IndonesianaTV.id" site_id="indonesiana">Indonesiana TV</channel> -->
<!-- <channel lang="id" xmltv_id="UtamiTV.id" site_id="utamitv">Utami TV</channel> -->
<channel lang="id" xmltv_id="CCTV4Asia.cn" site_id="cctv4">CCTV4</channel>
<channel lang="id" xmltv_id="DWEnglish.de" site_id="dwtv">DW (English)</channel>
<channel lang="id" xmltv_id="ABCAustralia.au" site_id="abcaustralia">ABC Australia</channel>
<!-- <channel lang="id" xmltv_id="ChineseDrama.id" site_id="chinesedrama">Chinese Drama</channel> -->
<channel lang="id" xmltv_id="EuronewsEnglish.fr" site_id="euronews">Euronews</channel>
<channel lang="id" xmltv_id="TRTWorld.tr" site_id="trtworld">TRT World</channel>
<channel lang="id" xmltv_id="France24English.fr" site_id="france24">France 24</channel>
<channel lang="id" xmltv_id="CGTNDocumentary.cn" site_id="cgtndocumentary">CGTN Documentary</channel>
<channel lang="id" xmltv_id="SCTV.id" site_id="sctv">SCTV</channel>
<channel lang="id" xmltv_id="Indosiar.id" site_id="indosiar">Indosiar</channel>
<!-- <channel lang="id" xmltv_id="UseeSports.id" site_id="useesport">UseeSports</channel> -->
<!-- <channel lang="id" xmltv_id="UseeSports2.id" site_id="useesports2">UseeSports2</channel> -->
<channel lang="id" xmltv_id="AlJazeeraChannel.qa" site_id="aljazeera">Aljazeera</channel>
<channel lang="id" xmltv_id="AnimaxAsia.sg" site_id="animax">Animax</channel>
<channel lang="id" xmltv_id="AniplusAsia.sg" site_id="aniplus">ANIPlus</channel>
<channel lang="id" xmltv_id="ANTV.id" site_id="antv">ANTV</channel>
<channel lang="id" xmltv_id="ArirangTV.kr" site_id="arirang">Arirang</channel>
<channel lang="id" xmltv_id="AsianFoodNetwork.sg" site_id="afc">Asian Food Network</channel>
<channel lang="id" xmltv_id="ATV.id" site_id="atv">ATV</channel>
<channel lang="id" xmltv_id="AXNIndonesia.id" site_id="axn">AXN</channel>
<channel lang="id" xmltv_id="BabyFirst.us" site_id="babyfirst">Baby First</channel>
<channel lang="id" xmltv_id="BaliTV.id" site_id="balitv">Bali TV</channel>
<channel lang="id" xmltv_id="beINSports1Indonesia.id" site_id="bein1">beIN Sports 1</channel>
<channel lang="id" xmltv_id="beINSports3Indonesia.id" site_id="bein2">beIN Sports 3</channel>
<channel lang="id" xmltv_id="SPOTV.kr" site_id="spotv">SPOTV</channel>
<channel lang="id" xmltv_id="SPOTV2.kr" site_id="spotv2">SPOTV2</channel>
<channel lang="id" xmltv_id="NBATV.us" site_id="nba">NBA</channel>
<channel lang="id" xmltv_id="eGGNetwork.my" site_id="egg">egg network</channel>
<channel lang="id" xmltv_id="FightSports.us" site_id="fightsport">Fight Sport</channel>
<channel lang="id" xmltv_id="tvNMoviesAsia.hk" site_id="tvnmovies">TVN Movies</channel>
<channel lang="id" xmltv_id="IMC.id" site_id="imc">IMC</channel>
<channel lang="id" xmltv_id="GalaxyPremium.id" site_id="galaxypremium">Galaxy Premium</channel>
<channel lang="id" xmltv_id="Galaxy.id" site_id="galaxy">Galaxy</channel>
<!-- <channel lang="id" xmltv_id="Hits.id" site_id="hits">Hits</channel> -->
<!-- <channel lang="id" xmltv_id="Flik.id" site_id="flik">Flik</channel> -->
<channel lang="id" xmltv_id="BeritaSatu.id" site_id="beritasatu">Berita Satu</channel>
<channel lang="id" xmltv_id="BioskopIndonesia.id" site_id="bioskopindonesia">Bioskop Indonesia</channel>
<channel lang="id" xmltv_id="BloombergTVAsia.hk" site_id="bloomberg">Bloomberg</channel>
<channel lang="id" xmltv_id="BoomerangAsia.sg" site_id="boomerang">Boomerang</channel>
<channel lang="id" xmltv_id="CartoonNetworkAsia.sg" site_id="cartoonnetwork">Cartoon Network</channel>
<channel lang="id" xmltv_id="CCTV4Asia.cn" site_id="cctv4">CCTV4</channel>
<channel lang="id" xmltv_id="CelestialMoviesIndonesia.id" site_id="celestialmovie">Celestial Movie</channel>
<channel lang="id" xmltv_id="ZeeBioskop.id" site_id="zbioskop">ZBioskop</channel>
<channel lang="id" xmltv_id="ParamountNetworkIndonesia.id" site_id="paramount">Paramount</channel>
<channel lang="id" xmltv_id="Thrill.hk" site_id="thrill">Thrill</channel>
<channel lang="id" xmltv_id="CGTNDocumentary.cn" site_id="cgtndocumentary">CGTN Documentary</channel>
<channel lang="id" xmltv_id="CinemaWorld.my" site_id="cinemaworld">Cinema World</channel>
<channel lang="id" xmltv_id="CitraDangdut.id" site_id="citradangdut">Citra Dangdut</channel>
<channel lang="id" xmltv_id="CitraDrama.id" site_id="cdrama">Citra Drama </channel>
<channel lang="id" xmltv_id="CNA.sg" site_id="newsasia">News Asia</channel>
<channel lang="id" xmltv_id="CNBCAsia.sg" site_id="cnbcasia">CNBC Asia</channel>
<channel lang="id" xmltv_id="CNBCIndonesia.id" site_id="cnbcindonesia">CNBC Indonesia</channel>
<channel lang="id" xmltv_id="CNNIndonesia.id" site_id="cnnindonesia">CNN Indonesia</channel>
<channel lang="id" xmltv_id="CNNInternationalAsiaPacific.hk" site_id="cnninternational">CNN International</channel>
<channel lang="id" xmltv_id="CrimePlusInvestigationAsia.sg" site_id="crimeinvestigation">Crime Investigation</channel>
<channel lang="id" xmltv_id="CTiAsia.tw" site_id="ctiasia">CTI Asia</channel>
<channel lang="id" xmltv_id="DAAITV.id" site_id="daaitv">Daai TV</channel>
<channel lang="id" xmltv_id="DiscoveryChannelIndonesia.id" site_id="disco">Discovery Channel</channel>
<channel lang="id" xmltv_id="DreamWorksChannelAsia.us" site_id="dreamworks">Dreamworks</channel>
<channel lang="id" xmltv_id="DuniaAnak.id" site_id="duniaanak">Dunia anak</channel>
<channel lang="id" xmltv_id="DuniaLain.id" site_id="dunialain">Dunia Lain</channel>
<channel lang="id" xmltv_id="DWEnglish.de" site_id="dwtv">DW (English)</channel>
<channel lang="id" xmltv_id="EatNGo.id" site_id="eatgo">Eat N Go</channel>
<channel lang="id" xmltv_id="EBCAsia.tw" site_id="ettvasia">EBC Asia</channel>
<channel lang="id" xmltv_id="eGGNetwork.my" site_id="egg">egg network</channel>
<channel lang="id" xmltv_id="EuronewsEnglish.fr" site_id="euronews">Euronews</channel>
<channel lang="id" xmltv_id="FashionTVAsia.fr" site_id="fashiontv">FashionTV</channel>
<channel lang="id" xmltv_id="FightSports.us" site_id="fightsport">Fight Sport</channel>
<channel lang="id" xmltv_id="France24English.fr" site_id="france24">France 24</channel>
<channel lang="id" xmltv_id="Galaxy.id" site_id="galaxy">Galaxy</channel>
<channel lang="id" xmltv_id="GalaxyPremium.id" site_id="galaxypremium">Galaxy Premium</channel>
<channel lang="id" xmltv_id="HGTVAsia.us" site_id="hgtv">HGTV</channel>
<channel lang="id" xmltv_id="HistoryAsia.us" site_id="history">History</channel>
<channel lang="id" xmltv_id="Horee.id" site_id="horee">Horee</channel>
<channel lang="id" xmltv_id="HorizonSports.us" site_id="horizonsport">Horizon Sports</channel>
<channel lang="id" xmltv_id="IDXChannel.id" site_id="idx">IDX</channel>
<channel lang="id" xmltv_id="IMC.id" site_id="imc">IMC</channel>
<channel lang="id" xmltv_id="IndiKids.id" site_id="indikids">IndiKids</channel>
<channel lang="id" xmltv_id="Indosiar.id" site_id="indosiar">Indosiar</channel>
<channel lang="id" xmltv_id="INews.id" site_id="inews">iNews</channel>
<channel lang="id" xmltv_id="iPanda.cn" site_id="pandatv">Panda TV</channel>
<channel lang="id" xmltv_id="JakTV.id" site_id="jaktv">JakTV</channel>
<channel lang="id" xmltv_id="JTV.id" site_id="jtv">JTV</channel>
<channel lang="id" xmltv_id="KBSWorld.kr" site_id="kbsworld">KBS World</channel>
<channel lang="id" xmltv_id="KIX.hk" site_id="kix">Kix</channel>
<channel lang="id" xmltv_id="KompasTV.id" site_id="kompastv">Kompas TV</channel>
<channel lang="id" xmltv_id="KPlus.sg" site_id="kplus">Kplus</channel>
<channel lang="id" xmltv_id="LifetimeAsia.us" site_id="lifetime">Lifetime</channel>
<channel lang="id" xmltv_id="LinguaChannel.id" site_id="lingua">Lingua</channel>
<channel lang="id" xmltv_id="MentariTV.id" site_id="mentaritv">Mentari TV</channel>
<channel lang="id" xmltv_id="MetroTV.id" site_id="metrotv">Metro TV</channel>
<channel lang="id" xmltv_id="MNCNews.id" site_id="mncnews">MNC News</channel>
<channel lang="id" xmltv_id="MQTV.id" site_id="mqtv">MQTV</channel>
<channel lang="id" xmltv_id="MShopSignature.id" site_id="mncshop">M Shop</channel>
<channel lang="id" xmltv_id="MTATV.id" site_id="mtatv">MTATV</channel>
<channel lang="id" xmltv_id="MTVLive.uk" site_id="mtvlive">MTV Live</channel>
<channel lang="id" xmltv_id="MyCinema.id" site_id="mycinema">My Cinema</channel>
<channel lang="id" xmltv_id="MyCinemaAsia.id" site_id="mycinemaasia">My Cinema Asia</channel>
<channel lang="id" xmltv_id="MyFamily.id" site_id="myfamily">My Family</channel>
<channel lang="id" xmltv_id="MyCinema.id" site_id="mycinema">My Cinema</channel>
<channel lang="id" xmltv_id="CinemaWorld.my" site_id="cinemaworld">Cinema World</channel>
<channel lang="id" xmltv_id="CNNIndonesia.id" site_id="cnnindonesia">CNN Indonesia</channel>
<channel lang="id" xmltv_id="CNBCIndonesia.id" site_id="cnbcindonesia">CNBC Indonesia</channel>
<channel lang="id" xmltv_id="BloombergTVAsia.hk" site_id="bloomberg">Bloomberg</channel>
<channel lang="id" xmltv_id="CNA.sg" site_id="newsasia">News Asia</channel>
<channel lang="id" xmltv_id="CNNInternationalAsiaPacific.hk" site_id="cnninternational">CNN International</channel>
<channel lang="id" xmltv_id="AlJazeeraChannel.qa" site_id="aljazeera">Aljazeera</channel>
<channel lang="id" xmltv_id="CNBCAsia.sg" site_id="cnbcasia">CNBC Asia</channel>
<channel lang="id" xmltv_id="TVBSNews.tw" site_id="tvbs">TVBS News</channel>
<channel lang="id" xmltv_id="tvNAsia.hk" site_id="tvn">TVN</channel>
<channel lang="id" xmltv_id="AXNIndonesia.id" site_id="axn">AXN</channel>
<channel lang="id" xmltv_id="KPlus.sg" site_id="kplus">Kplus</channel>
<channel lang="id" xmltv_id="KBSWorld.kr" site_id="kbsworld">KBS World</channel>
<channel lang="id" xmltv_id="CitraDrama.id" site_id="cdrama">Citra Drama </channel>
<channel lang="id" xmltv_id="WarnerTVAsia.us" site_id="warner">Warner</channel>
<channel lang="id" xmltv_id="ROCKExtreme.sg" site_id="blueantextreme">Rock Extreme</channel>
<channel lang="id" xmltv_id="TLCSoutheastAsia.sg" site_id="tlc">TLC</channel>
<channel lang="id" xmltv_id="HistoryAsia.us" site_id="history">History</channel>
<channel lang="id" xmltv_id="DuniaLain.id" site_id="dunialain">Dunia Lain</channel>
<channel lang="id" xmltv_id="ROCKEntertainment.sg" site_id="blueant">Rock Entertainment</channel>
<channel lang="id" xmltv_id="AniplusAsia.sg" site_id="aniplus">ANIPlus</channel>
<channel lang="id" xmltv_id="AnimaxAsia.sg" site_id="animax">Animax</channel>
<channel lang="id" xmltv_id="OneTVAsia.sg" site_id="sone">SONE</channel>
<channel lang="id" xmltv_id="KIX.hk" site_id="kix">Kix</channel>
<channel lang="id" xmltv_id="LifetimeAsia.us" site_id="lifetime">Lifetime</channel>
<channel lang="id" xmltv_id="TV5MondeAsia.fr" site_id="tv5monde">TV5Monde</channel>
<channel lang="id" xmltv_id="NHKWorldPremium.jp" site_id="nhkpremium">NHK World Premium</channel>
<!-- <channel lang="id" xmltv_id="Formosa.id" site_id="formosa">Formosa</channel> -->
<!-- <channel lang="id" xmltv_id="SGEM.id" site_id="sgem">SGEM</channel> -->
<!-- UNSURE- GUESS --><channel lang="id" xmltv_id="ZhejiangSatelliteTVInternational.cn" site_id="zhejiang">Zhejiang</channel>
<!-- <channel lang="id" xmltv_id="Shenzen.id" site_id="shenzen">Shenzen</channel> -->
<channel lang="id" xmltv_id="EBCAsia.tw" site_id="ettvasia">EBC Asia</channel>
<channel lang="id" xmltv_id="CTiAsia.tw" site_id="ctiasia">CTI Asia</channel>
<channel lang="id" xmltv_id="CartoonNetworkAsia.sg" site_id="cartoonnetwork">Cartoon Network</channel>
<channel lang="id" xmltv_id="Horee.id" site_id="horee">Horee</channel>
<channel lang="id" xmltv_id="NickJrAsia.sg" site_id="nickjr">Nick Junior</channel>
<channel lang="id" xmltv_id="NickelodeonAsia.sg" site_id="nickelodeon">Nickelodeon</channel>
<channel lang="id" xmltv_id="DuniaAnak.id" site_id="duniaanak">Dunia anak</channel>
<channel lang="id" xmltv_id="BoomerangAsia.sg" site_id="boomerang">Boomerang</channel>
<channel lang="id" xmltv_id="MyKidz.id" site_id="mykids">MyKidz</channel>
<channel lang="id" xmltv_id="MentariTV.id" site_id="mentaritv">Mentari TV</channel>
<!-- <channel lang="id" xmltv_id="DaVinciLearning.id" site_id="davinci">Da Vinci Learning</channel> -->
<channel lang="id" xmltv_id="NationalGeographicIndonesia.id" site_id="natgeo">Nat Geo</channel>
<channel lang="id" xmltv_id="DiscoveryChannelIndonesia.id" site_id="disco">Discovery Channel</channel>
<channel lang="id" xmltv_id="NationalGeographicWildIndonesia.id" site_id="natgeowild">Nat Geo Wild</channel>
<channel lang="id" xmltv_id="TechStorm.sg" site_id="techstorm">Tech Storm</channel>
<channel lang="id" xmltv_id="CrimePlusInvestigationAsia.sg" site_id="crimeinvestigation">Crime Investigation</channel>
<channel lang="id" xmltv_id="LinguaChannel.id" site_id="lingua">Lingua</channel>
<channel lang="id" xmltv_id="iPanda.cn" site_id="pandatv">Panda TV</channel>
<channel lang="id" xmltv_id="AsianFoodNetwork.sg" site_id="afc">Asian Food Network</channel>
<channel lang="id" xmltv_id="HGTVAsia.us" site_id="hgtv">HGTV</channel>
<channel lang="id" xmltv_id="EatNGo.id" site_id="eatgo">Eat N Go</channel>
<channel lang="id" xmltv_id="FashionTVAsia.fr" site_id="fashiontv">FashionTV</channel>
<channel lang="id" xmltv_id="MTVLive.uk" site_id="mtvlive">MTV Live</channel>
<channel lang="id" xmltv_id="CitraDangdut.id" site_id="citradangdut">Citra Dangdut</channel>
<!-- <channel lang="id" xmltv_id="I-Konser.id" site_id="ikonser">I-Konser</channel> -->
<channel lang="id" xmltv_id="OChannel.id" site_id="ochannel">O Channel</channel>
<channel lang="id" xmltv_id="nsert.id" site_id="insert">Insert</channel>
<!-- <channel lang="id" xmltv_id="KCON2022.id" site_id="kcon1">KCON 2022</channel> -->
<!-- <channel lang="id" xmltv_id="SPOTV-MotoGP.id" site_id="motogp">SPOTV - MotoGP</channel> -->
<channel lang="id" xmltv_id="NBATV.us" site_id="nba">NBA</channel>
<channel lang="id" xmltv_id="NET.id" site_id="net">Net.</channel>
<channel lang="id" xmltv_id="DAAITV.id" site_id="daaitv">Daai TV</channel>
<channel lang="id" xmltv_id="IDXChannel.id" site_id="idx">IDX</channel>
<!-- <channel lang="id" xmltv_id="MusikIndonesia.id" site_id="musikindo">Musik Indonesia</channel> -->
<!-- <channel lang="id" xmltv_id="MMITV.id" site_id="mmi">MMI TV</channel> -->
<channel lang="id" xmltv_id="MShopSignature.id" site_id="mncshop">M Shop</channel>
<channel lang="id" xmltv_id="SeruChannel.id" site_id="seru">Seru!</channel>
<channel lang="id" xmltv_id="UChannel.id" site_id="uchannel">UChannel</channel>
<!-- <channel lang="id" xmltv_id="ElJohnTV.id" site_id="eljohn">El John TV</channel> -->
<channel lang="id" xmltv_id="NHKWorldJapan.jp" site_id="nhkworld">NHK World Japan</channel>
<channel lang="id" xmltv_id="ATV.id" site_id="atv">ATV</channel>
<channel lang="id" xmltv_id="NHKWorldPremium.jp" site_id="nhkpremium">NHK World Premium</channel>
<channel lang="id" xmltv_id="NickelodeonAsia.sg" site_id="nickelodeon">Nickelodeon</channel>
<channel lang="id" xmltv_id="NickJrAsia.sg" site_id="nickjr">Nick Junior</channel>
<channel lang="id" xmltv_id="nsert.id" site_id="insert">Insert</channel>
<channel lang="id" xmltv_id="NusantaraTV.id" site_id="nusantaratv">Nusantara TV</channel>
<channel lang="id" xmltv_id="OChannel.id" site_id="ochannel">O Channel</channel>
<channel lang="id" xmltv_id="OneTVAsia.sg" site_id="sone">SONE</channel>
<channel lang="id" xmltv_id="OutdoorChannelInternational.us" site_id="outdoor">Outdoor Channel</channel>
<channel lang="id" xmltv_id="HorizonSports.us" site_id="horizonsport">Horizon Sports</channel>
<!-- <channel lang="id" xmltv_id="HItsMovie.id" site_id="hitsmovie">HIts Movie</channel> -->
<channel lang="id" xmltv_id="StarChineseMovies.hk" site_id="starchinesemovies">Star Chinese Movies</channel>
<channel lang="id" xmltv_id="ParamountNetworkIndonesia.id" site_id="paramount">Paramount</channel>
<channel lang="id" xmltv_id="RajawaliTV.id" site_id="rtv">Rajawali TV</channel>
<channel lang="id" xmltv_id="ROCKEntertainment.sg" site_id="blueant">Rock Entertainment</channel>
<channel lang="id" xmltv_id="ROCKExtreme.sg" site_id="blueantextreme">Rock Extreme</channel>
<channel lang="id" xmltv_id="RodjaTV.id" site_id="rodjatv">Rodja TV</channel>
<channel lang="id" xmltv_id="RRINet.id" site_id="rrinet">RRI NET</channel>
<channel lang="id" xmltv_id="RuangTrampil.id" site_id="useeinfo">Ruang Trampil</channel>
<channel lang="id" xmltv_id="SCTV.id" site_id="sctv">SCTV</channel>
<channel lang="id" xmltv_id="SEAToday.id" site_id="seatoday">SEA Today</channel>
<channel lang="id" xmltv_id="SeruChannel.id" site_id="seru">Seru!</channel>
<channel lang="id" xmltv_id="SPOTV.kr" site_id="spotv">SPOTV</channel>
<channel lang="id" xmltv_id="SPOTV2.kr" site_id="spotv2">SPOTV2</channel>
<channel lang="id" xmltv_id="StarChineseChannel.hk" site_id="starchinesechannel">Star Chinese Channel</channel>
<channel lang="id" xmltv_id="StarChineseMovies.hk" site_id="starchinesemovies">Star Chinese Movies</channel>
<channel lang="id" xmltv_id="TawafTV.id" site_id="tawaftv">Tawaf TV</channel>
<channel lang="id" xmltv_id="TechStorm.sg" site_id="techstorm">Tech Storm</channel>
<channel lang="id" xmltv_id="Thrill.hk" site_id="thrill">Thrill</channel>
<channel lang="id" xmltv_id="TLCSoutheastAsia.sg" site_id="tlc">TLC</channel>
<channel lang="id" xmltv_id="Trans7.id" site_id="trans7">Trans7</channel>
<channel lang="id" xmltv_id="TransTV.id" site_id="transtv">TransTV</channel>
<channel lang="id" xmltv_id="TRTWorld.tr" site_id="trtworld">TRT World</channel>
<channel lang="id" xmltv_id="TV5MondeAsia.fr" site_id="tv5monde">TV5Monde</channel>
<channel lang="id" xmltv_id="TV9Nusantara.id" site_id="tv9">TV9 NU</channel>
<channel lang="id" xmltv_id="TVBSNews.tw" site_id="tvbs">TVBS News</channel>
<channel lang="id" xmltv_id="TVEdukasi.id" site_id="tvedukasi">TV Edukasi</channel>
<channel lang="id" xmltv_id="TVMUI.id" site_id="muitv">MUI TV</channel>
<channel lang="id" xmltv_id="tvNAsia.hk" site_id="tvn">TVN</channel>
<channel lang="id" xmltv_id="tvNMoviesAsia.hk" site_id="tvnmovies">TVN Movies</channel>
<channel lang="id" xmltv_id="tvOne.id" site_id="tvone">TV One</channel>
<channel lang="id" xmltv_id="TVRINasional.id" site_id="tvri">TVRI</channel>
<channel lang="id" xmltv_id="UChannel.id" site_id="uchannel">UChannel</channel>
<channel lang="id" xmltv_id="UseePhoto.id" site_id="useephoto">Usee Photo</channel>
<channel lang="id" xmltv_id="UseePrime.id" site_id="useeprime">UseePrime</channel>
<channel lang="id" xmltv_id="WarnerTVAsia.us" site_id="warner">Warner</channel>
<channel lang="id" xmltv_id="ZeeBioskop.id" site_id="zbioskop">ZBioskop</channel>
<channel lang="id" xmltv_id="ZhejiangSatelliteTVInternational.cn" site_id="zhejiang">Zhejiang</channel>
<!-- <channel lang="id" xmltv_id="AlQuranKareem.id" site_id="alquran">AlQuran Kareem</channel> -->
<!-- <channel lang="id" xmltv_id="Antara.id" site_id="antara">Antara</channel> -->
<!-- <channel lang="id" xmltv_id="ChineseDrama.id" site_id="chinesedrama">Chinese Drama</channel> -->
<!-- <channel lang="id" xmltv_id="DaVinciLearning.id" site_id="davinci">Da Vinci Learning</channel> -->
<!-- <channel lang="id" xmltv_id="ElJohnTV.id" site_id="eljohn">El John TV</channel> -->
<!-- <channel lang="id" xmltv_id="Flik.id" site_id="flik">Flik</channel> -->
<!-- <channel lang="id" xmltv_id="Formosa.id" site_id="formosa">Formosa</channel> -->
<!-- <channel lang="id" xmltv_id="Hits.id" site_id="hits">Hits</channel> -->
<!-- <channel lang="id" xmltv_id="HItsMovie.id" site_id="hitsmovie">HIts Movie</channel> -->
<!-- <channel lang="id" xmltv_id="I-Konser.id" site_id="ikonser">I-Konser</channel> -->
<!-- <channel lang="id" xmltv_id="IndonesianaTV.id" site_id="indonesiana">Indonesiana TV</channel> -->
<!-- <channel lang="id" xmltv_id="KCON2022.id" site_id="kcon1">KCON 2022</channel> -->
<!-- <channel lang="id" xmltv_id="KungfuTV.id" site_id="kungfutv">Kungfu TV</channel> -->
<channel lang="id" xmltv_id="BabyFirst.us" site_id="babyfirst">Baby First</channel>
<channel lang="id" xmltv_id="DreamWorksChannelAsia.us" site_id="dreamworks">Dreamworks</channel>
<!-- <channel lang="id" xmltv_id="MMITV.id" site_id="mmi">MMI TV</channel> -->
<!-- <channel lang="id" xmltv_id="MuhammadiyahTV.id" site_id="muhammadiyahtv">Muhammadiyah TV</channel> -->
<!-- <channel lang="id" xmltv_id="MusikIndonesia.id" site_id="musikindo">Musik Indonesia</channel> -->
<!-- <channel lang="id" xmltv_id="Prambors.id" site_id="pramborstv">Prambors</channel> -->
<!-- <channel lang="id" xmltv_id="SGEM.id" site_id="sgem">SGEM</channel> -->
<!-- <channel lang="id" xmltv_id="Shenzen.id" site_id="shenzen">Shenzen</channel> -->
<!-- <channel lang="id" xmltv_id="SPOTV-MotoGP.id" site_id="motogp">SPOTV - MotoGP</channel> -->
<!-- <channel lang="id" xmltv_id="UseeSports.id" site_id="useesport">UseeSports</channel> -->
<!-- <channel lang="id" xmltv_id="UseeSports2.id" site_id="useesports2">UseeSports2</channel> -->
<!-- <channel lang="id" xmltv_id="UtamiTV.id" site_id="utamitv">Utami TV</channel> -->
</channels>
</site>

View File

@@ -0,0 +1,868 @@
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=0,maximum-scale=10">
<meta name="HandheldFriendly" content="true">
<meta name="format-detection" content="telephone=no">
<meta http-equiv="imagetoolbar" content="no">
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<meta name="description" content="ENA DRAMA, ENA STORY, 채널칭, ONT, 헬스메디 채널 운영 및 오리지널 콘텐츠 제작">
<meta name="keywords" content="ENA DRAMA, ENA STORY, 채널칭, ONT, 헬스메디 채널 운영 및 오리지널 콘텐츠 제작">
<meta property="og:type" content="website">
<meta property="og:title" content="미디어지니 [Touch and Feel 콘텐츠 채널]">
<meta property="og:description" content="ENA DRAMA, ENA STORY, 채널칭, ONT, 헬스메디 채널 운영 및 오리지널 콘텐츠 제작">
<meta http-equiv="imagetoolbar" content="no">
<link rel="canonical" href="https://mediagenie.co.kr/">
<meta name="naver-site-verification" content="c04af30801bb12495fde71b4b4423ed13fb4a837" />
<title>미디어지니 [Touch and Feel 콘텐츠 채널]</title>
<link rel="stylesheet" href="https://mediagenie.co.kr/css/common.css?ver=210618">
<link rel="stylesheet" href="https://mediagenie.co.kr/js/font-awesome/css/font-awesome.min.css?ver=210618">
<link rel="stylesheet" href="https://mediagenie.co.kr/css/contents.css?ver=210618">
<!--[if lte IE 8]>
<script src="https://mediagenie.co.kr/js/html5.js"></script>
<![endif]-->
<script>
// 자바스크립트에서 사용하는 전역변수 선언
var g5_url = "https://mediagenie.co.kr";
var g5_bbs_url = "https://mediagenie.co.kr/bbs";
var g5_is_member = "";
var g5_is_admin = "";
var g5_is_mobile = "";
var g5_bo_table = "";
var g5_sca = "";
var g5_editor = "";
var g5_cookie_domain = "";
</script>
<script src="https://momentjs.com/downloads/moment.js"></script>
<script src="https://mediagenie.co.kr/js/jquery-1.12.4.min.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/jquery-migrate-1.4.1.min.js?ver=210618"></script>
<script src="https://code.jquery.com/ui/1.13.1/jquery-ui.min.js"></script>
<script src="https://mediagenie.co.kr/js/jquery.menu.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/common.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/wrest.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/placeholders.min.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/slick.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/genie.js?ver=210618"></script>
</head>
<body>
<div id="wrapper" class="channel">
<!-- 상단 시작 { -->
<header id="header">
<div class="wfix">
<h1 id="h1"><a href="https://ena.skylifetv.co.kr/" class="logo">skyTV</a></h1>
<button type="button" class="tgl_sns mo"><i>SNS 보기</i></button>
<div id="tnb">
<ul class="lst mont">
<li class="ENA"><a href="http://ena.skylifetv.co.kr/ENA" target="_blank">ENA</a></li>
<li class="ENA_PLAY"><a href="http://ena.skylifetv.co.kr/ENA_PLAY" target="_blank">ENA PLAY</a></li>
<li class="ENA_DRAMA"><a href="https://mediagenie.co.kr/ENA_DRAMA">ENA DRAMA</a></li>
<li class="ENA_STORY"><a href="https://mediagenie.co.kr/ENA_STORY">ENA STORY</a></li>
<li class="CHING"><a href="https://mediagenie.co.kr/CHING">CHING</a></li>
<li class="ONT"><a href="https://mediagenie.co.kr/ONT">ONT</a></li>
<li class="Healthmedi"><a href="https://mediagenie.co.kr/Healthmedi">Healthmedi</a></li>
</ul>
</div>
<nav id="menu">
<ul class="lst mont">
<li class="d1">
<a href="https://mediagenie.co.kr/contents/schedule.php" class="d1_link"><span class="name_menu">편성표</span></a>
<ul class="sub">
<li class="d2"><a href="https://mediagenie.co.kr/contents/schedule.php" class="d2_link"><span class="name_menu">편성표</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/number" class="d2_link"><span class="name_menu">채널번호</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/contents/qton.php" class="d2_link"><span class="name_menu">큐톤</span></a></li>
</ul>
</li>
<li class="d1">
<a href="/program" class="d1_link"><span class="name_menu">프로그램</span></a>
<ul class="sub">
<li class="d2"><a href="/program" class="d2_link"><span class="name_menu">프로그램</span></a></li>
</ul>
</li>
<li class="d1">
<a href="https://mediagenie.co.kr/notice" class="d1_link"><span class="name_menu">공지사항</span></a>
<ul class="sub">
<li class="d2"><a href="https://mediagenie.co.kr/notice" class="d2_link"><span class="name_menu">공지사항</span></a></li>
</ul>
</li>
<li class="d1">
<a href="https://mediagenie.co.kr/ENA_DRAMA" class="d1_link"><span class="name_menu">채널소개</span></a>
<ul class="sub mont">
<li class="d2"><a href="https://mediagenie.co.kr/ENA_DRAMA" class="d2_link"><span class="name_menu">ENA DRAMA</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/ENA_STORY" class="d2_link"><span class="name_menu">ENA STORY</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/CHING" class="d2_link"><span class="name_menu">CHING</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/ONT" class="d2_link"><span class="name_menu">ONT</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/Healthmedi" class="d2_link"><span class="name_menu">Healthmedi</span></a></li>
</ul>
</li>
</ul>
</nav>
<div id="hd_sns">
<ul class="lst">
<li class="sns_youtube"><a href="https://www.youtube.com/c/ENA_PICK/videos" target="_blank">유튜브</a></li>
<li class="sns_facebook"><a href="https://www.facebook.com/mediagenietv" target="_blank">페이스북</a></li>
<li class="sns_blog"><a href="https://blog.naver.com/hyundaimediaofficial" target="_blank">블로그</a></li>
<li class="sns_insta"><a href="https://www.instagram.com/enadrama.ch/" target="_blank">인스타그램</a></li>
</ul>
</div>
<button type="button" class="tgl_menu mo"><i>전체메뉴</i></button>
<nav id="lnb" class="mo">
<button type="button" class="close">닫기</button>
<div class="inr">
<div class="hd_lnb"><a href="https://mediagenie.co.kr"><img src="https://mediagenie.co.kr/img/logo_skytv.png" alt="skyTV"></a></div>
<ul class="lnb_lst_channel">
<li><a href="https://mediagenie.co.kr/ENA_DRAMA"><img src="https://mediagenie.co.kr/img/chn_logo_ENA_DRAMA.png"></a></li>
<li><a href="https://mediagenie.co.kr/ENA_STORY"><img src="https://mediagenie.co.kr/img/chn_logo_ENA_STORY.png"></a></li>
<li><a href="http://ena.skylifetv.co.kr/ENA" target="_blank"><img src="https://mediagenie.co.kr/img/chn_logo_ENA.png"></a></li>
<li><a href="http://ena.skylifetv.co.kr/ENA_PLAY" target="_blank"><img src="https://mediagenie.co.kr/img/chn_logo_ENA_PLAY.png"></a></li>
</ul>
<ul class="lst">
<li class="d1 on">
<strong class="d1_tit"><span class="name_menu">편성표</span></strong>
<ul class="sub" style="display:block;">
<li class="d2"><a href="https://mediagenie.co.kr/contents/schedule.php" class="d2_link"><span class="name_menu">편성표</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/number" class="d2_link"><span class="name_menu">채널번호</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/contents/qton.php" class="d2_link"><span class="name_menu">큐톤</span></a></li>
</ul>
</li>
<li class="d1">
<strong class="d1_tit"><span class="name_menu">프로그램</span></strong>
<ul class="sub">
<li class="d2"><a href="/program" class="d2_link"><span class="name_menu">프로그램</span></a></li>
</ul>
</li>
<li class="d1">
<strong class="d1_tit"><span class="name_menu">공지사항</span></strong>
<ul class="sub">
<li class="d2"><a href="https://mediagenie.co.kr/notice" class="d2_link"><span class="name_menu">공지사항</span></a></li>
</ul>
</li>
<li class="d1 on">
<strong class="d1_tit"><span class="name_menu">채널소개</span></strong>
<ul class="sub mont" style="display:block;">
<li class="d2"><a href="https://mediagenie.co.kr/ENA_DRAMA" class="d2_link"><span class="name_menu">ENA DRAMA</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/ENA_STORY" class="d2_link"><span class="name_menu">ENA STORY</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/CHING" class="d2_link"><span class="name_menu">CHING</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/ONT" class="d2_link"><span class="name_menu">ONT</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/Healthmedi" class="d2_link"><span class="name_menu">헬스메디</span></a></li>
</ul>
</li>
</ul>
</div>
</nav>
</div>
</header>
<!-- } 상단 끝 -->
<hr>
<!-- 콘텐츠 시작 { -->
<div id="container" class="ena_drama">
<div id="visual" style="background-color:#478baf">
<div class="bg mo" style="background-image:url(https://mediagenie.co.kr/data/file/channel1/);"></div>
<div class="bg" style="background-image:url(https://mediagenie.co.kr/data/file/channel1/);"></div>
</div>
<div id="contents">
<!--
<section class="section tit_channel">
-->
<section class="section tit_channel type2">
<!--
-->
<div class="wfix">
<strong class="tit">드라마틱 DNA, <b class="mont emph">ENA DRAMA</b></strong>
<div class="cont">
<strong class="emph subTit"><p><span style="font-size:36px;color:rgb(238,42,48);">최고를 꿈꾸는 드라마 전문채널</span>&nbsp;</p></strong>
<p class="desc">3049 여성들의 취향을 저격할 드라마 전문 큐레이션 채널<br />
드라마 덕후들을 위한 즐거운 커뮤니티장<br />
가장 HOT한 드라마를 가장 빠르게 !!</p>
</div>
<!--
</div> -->
</div>
</section>
<!-- 프로그램
<section class="section programs">
<div class="wfix">
<h4 class="tit_sec">프로그램</h4>
<div class="wrap_program">
<div class="lst">
<div class="item">
<a href="" class="link">
<div class="thumb"><img src="https://mediagenie.co.kr/data/file/channel1/1954331223_7YH3g96B_80130f97ee6ea9995e5fe8b49eaabe8f18ec42d9.ai" alt=""></div>
<strong class="tit_item ellip"></strong>
</a>
</div>
<div class="item">
<a href="" class="link">
<div class="thumb"><img src="/" alt=""></div>
<strong class="tit_item ellip"></strong>
</a>
</div>
<div class="item">
<a href="" class="link">
<div class="thumb"><img src="/" alt=""></div>
<strong class="tit_item ellip"></strong>
</a>
</div>
<div class="item">
<a href="" class="link">
<div class="thumb"><img src="/" alt=""></div>
<strong class="tit_item ellip"></strong>
</a>
</div>
</div>
</div>
</div>
</section>
-->
<section id="sec_sche" class="section wrap_schedule">
<div class="wfix">
<h4 class="tit_sec">실시간 편성표</h4>
<div class="wrap_lst_date">
<ul class="lst has_today day7">
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230122#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.22</span>
<span class="day">일요일</span>
</div>
</a>
</li>
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230123#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.23</span>
<span class="day">월요일</span>
</div>
</a>
</li>
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230124#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.24</span>
<span class="day">화요일</span>
</div>
</a>
</li>
<li class="onAir today">
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230125#sec_sche" class="inr">
<span class="lab mont">ON<br>AIR</span>
<div class="cont">
<span class="date roboto">
1.25 <em class="mo">23.01.25</em>
</span>
<span class="day">수요일</span>
</div>
</a>
</li>
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230126#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.26</span>
<span class="day">목요일</span>
</div>
</a>
</li>
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230127#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.27</span>
<span class="day">금요일</span>
</div>
</a>
</li>
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230128#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.28</span>
<span class="day">토요일</span>
</div>
</a>
</li>
</ul>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230124#sec_sche" class="arw prev">이전</a>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230126#sec_sche" class="arw next">다음</a>
</div>
<div class="wrap_tbl">
<table class="tbl">
<caption class="blind">실시간 편성표</caption>
<thead>
<tr>
<th scope="col">시간</th>
<th scope="col" colspan="2">프로그램 제목</th>
<th scope="col">회차</th>
<th scope="col">프로그램 정보</th>
<th scope="col">시청등급</th>
</tr>
</thead>
<tbody>
<tr>
<td class="col1">00:20</td>
<td class="col2" colspan="2">
대행사 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">5회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">01:34</td>
<td class="col2" colspan="2">
대행사 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">6회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">02:48</td>
<td class="col2" colspan="2">
빨간 풍선 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">9회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">04:13</td>
<td class="col2" colspan="2">
빨간 풍선 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">10회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">05:40</td>
<td class="col2" colspan="2">
법쩐 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">5회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">06:55</td>
<td class="col2" colspan="2">
법쩐 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">6회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">08:11</td>
<td class="col2" colspan="2">
남이 될 수 있을까 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">1회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">09:28</td>
<td class="col2" colspan="2">
남이 될 수 있을까 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">2회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr class="onAir">
<td class="col1">10:51</td>
<td class="col2">
<span class="mont mo onair">ON AIR</span>
오은영 게임 <ul class="lst_info mo">
<li><span class="lgd_lab mont orig"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col3 mont">ON AIR</td>
<td class="col4">1회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont orig"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">12</td>
</tr>
<tr>
<td class="col1">12:20</td>
<td class="col2" colspan="2">
대행사 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">5회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">13:41</td>
<td class="col2" colspan="2">
대행사 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">6회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">:59</td>
<td class="col2" colspan="2">
남이 될 수 있을까 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">1회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">16:19</td>
<td class="col2" colspan="2">
남이 될 수 있을까 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">2회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">17:38</td>
<td class="col2" colspan="2">
오은영 게임 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">1회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">12</td>
</tr>
<tr>
<td class="col1">19:06</td>
<td class="col2" colspan="2">
무한도전 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">392회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">12</td>
</tr>
<tr>
<td class="col1">20:40</td>
<td class="col2" colspan="2">
무한도전 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">393회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">12</td>
</tr>
<tr>
<td class="col1">22:15</td>
<td class="col2" colspan="2">
남이 될 수 있을까 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">5회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
<tr>
<td class="col1">23:27</td>
<td class="col2" colspan="2">
법쩐 <ul class="lst_info mo">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col4">6회</td>
<td class="col5">
<ul class="lst_info">
<li><span class="lgd_lab mont re"></span></li>
<li><span class="lgd_lab mont"></span></li>
</ul>
</td>
<td class="col6">15</td>
</tr>
</tbody>
</table>
</div>
<div class="ft_tbl">
<a href="javascript:;" class="tgl">편성표 자세히 보기</a>
<p class="refer">* 이 편성표는 방송사 사정에 따라 변경 될 수 있습니다.</p>
</div>
<div class="lgd">
<ul class="lst">
<li><span class="lgd_lab mont re"></span><span class="desc">재방송</span></li>
<li><span class="lgd_lab mont orig"></span><span class="desc">본방송</span></li>
<li><span class="lgd_lab mont"></span><span class="desc">일반방송</span></li>
<li><span class="lgd_lab mont"></span><span class="desc">화면해설</span></li>
<li><span class="lgd_lab mont"></span><span class="desc">수화방송</span></li>
<li><span class="lgd_lab mont"></span><span class="desc">자막방송</span></li>
<li><span class="lgd_lab mont"></span><span class="desc">음성다중</span></li>
<li><span class="lgd_lab mont">SD</span><span class="desc">일반화질</span></li>
<li><span class="lgd_lab mont">HD</span><span class="desc">고화질</span></li>
<li><span class="lgd_lab mont">UHD</span><span class="desc">초고화질</span></li>
</ul>
<div class="mo lst_age">
<ul class="lst">
<li><span class="lgd_lab mont">ALL</span></li>
<li><span class="lgd_lab">7</span></li>
<li><span class="lgd_lab">12</span></li>
<li><span class="lgd_lab">15</span></li>
<li><span class="lgd_lab age19">19</span></li>
</ul>
<span class="desc">연령대 별 시청 가능</span>
</div>
</div>
</div>
</section>
<section id="sec_num" class="section channelNum">
<div class="wfix">
<h4 class="tit_sec">채널 번호</h4>
</div>
<div class="wrap_number">
<div class="sch_area">
<div class="wfix">
<div class="inr_sch">
<strong class="tit">우리지역찾기</strong>
<div class="wrap_sch">
<div class="wrap_slt">
<select id="area1" class="slt_area" onchange="schArea(this)" title="시,도 선택">
<option value="">시/도</option>
<option value="강원" data-area="2">강원</option>
<option value="경기" data-area="3">경기</option>
<option value="경남" data-area="4">경남</option>
<option value="경북" data-area="5">경북</option>
<option value="광주" data-area="6">광주</option>
<option value="대구" data-area="7">대구</option>
<option value="대전" data-area="8">대전</option>
<option value="부산" data-area="9">부산</option>
<option value="서울" data-area="10">서울</option>
<option value="세종" data-area="11">세종</option>
<option value="울산" data-area="12">울산</option>
<option value="인천" data-area="13">인천</option>
<option value="전남" data-area="14">전남</option>
<option value="전북" data-area="15">전북</option>
<option value="제주" data-area="16">제주</option>
<option value="충남" data-area="17">충남</option>
<option value="충북" data-area="18">충북</option>
</select>
</div>
<div class="wrap_slt">
<select id="area2" class="slt_area" title="시,구,군 선택">
<option value="">시/구/군</option>
</select>
</div>
<button type="button" onclick="sch_result()" class="btn_sch">검색</button>
</div>
</div>
</div>
</div>
<div class="lst_numbers">
<div class="wfix">
<ul class="lst">
<li>
<strong class="roboto num">46</strong>
<span class="logo"><img src="../img/telecom_btv.png" alt="btv"></span>
<a href="https://www.skbroadband.com/" class="link" target="_blank">바로가기</a>
</li>
<li>
<strong class="roboto num">999</strong>
<span class="logo"><img src="../img/telecom_olleh.png" alt="olleh"></span>
<a href="https://tv.kt.com/" class="link" target="_blank">바로가기</a>
</li>
<li>
<strong class="roboto num">73</strong>
<span class="logo"><img src="../img/telecom_lg.png" alt="lg"></span>
<a href="https://www.uplus.co.kr/" class="link" target="_blank">바로가기</a>
</li>
<li>
<strong class="roboto num">36</strong>
<span class="logo"><img src="../img/telecom_ktsky.png" alt="ktsky"></span>
<a href="https://www.skylife.co.kr/" class="link" target="_blank">바로가기</a>
</li>
</ul>
</div>
</div>
</div>
<script>
function schArea(sel){
var sel_arr = $(sel).find("option:selected").data('area');
location.href = 'https://mediagenie.co.kr/ENA_DRAMA?qd=&chn=ENA_DRAMA&area_slt1='+sel_arr+'#sec_num';
}
function sch_result(){
var sel_arr = $('#area1').find("option:selected").data('area');
var sel_arr2 = $('#area2').find("option:selected").data('area');
location.href = 'https://mediagenie.co.kr/ENA_DRAMA?qd=&chn=ENA_DRAMA&area_slt1='+sel_arr+'&area_slt2='+sel_arr2+'#sec_num';
}
</script>
</section>
<div class="ft_chn">
<div class="wfix">
<div class="wrap_download">
<a href="https://mediagenie.co.kr/bbs/download.php?bo_table=channel1&amp;wr_id=2&amp;no=2" class="link_download"><span class="inr"><b class="mont emph">ENA DRAMA</b> <span class="ib"><em>채널</em> 로고 다운받기</span></span></a>
</div>
<div class="wrap_contact">채널문의 <a href="mailto:ks.shin@kt.com" class="mont"><span class="mo">채널문의</span>ks.shin@kt.com</a></div>
</div>
</div>
</div>
</div>
<script>
$(document).ready(function(){
if($('.wrap_schedule tr.onAir').length > 0){
var p = $('.wrap_schedule tr.onAir').prev();
var on = $('.wrap_schedule tr.onAir');
var n = $('.wrap_schedule tr.onAir').next();
}else {
var p = $('.wrap_schedule tr').eq(1)
var on = $('.wrap_schedule tr').eq(2)
var n = $('.wrap_schedule tr').eq(3)
}
if($('#sec_sche .lst').hasClass('has_today')){
$('.wrap_schedule tbody tr').not(p).not(n).not(on).hide()
$('.wrap_schedule .tgl').click(function(){
$(this).toggleClass('on');
if($('.wrap_schedule').hasClass('on')){
$('.wrap_schedule').removeClass('on')
$('.wrap_schedule tbody tr').not(p).not(n).not(on).hide()
}else {
$('.wrap_schedule').addClass('on')
$('.wrap_schedule tr').show()
}
})
$('.wrap_schedule tbody tr.onAir:first-child').next().next().show()
}else {
$('.wrap_schedule tbody tr:nth-child(n+4)').hide()
$('.wrap_schedule .tgl').click(function(){
if($('.wrap_schedule').hasClass('on')){
$('.wrap_schedule').removeClass('on')
$('.wrap_schedule tbody tr:nth-child(n+4)').hide()
}else {
$('.wrap_schedule').addClass('on')
$('.wrap_schedule tr').show()
}
})
}
})
</script>
</div>
<!-- } 콘텐츠 끝 -->
<hr>
<!-- 하단 시작 { -->
<footer id="footer">
<div class="links">
<div class="wfix">
<ul class="lst">
<li><a href="https://ena.skylifetv.co.kr/theme/business/html/company/01.php">회사소개</a></li>
<li><a href="https://ena.skylifetv.co.kr/bbs/board.php?bo_table=history">연혁</a></li>
<li><a href="https://ena.skylifetv.co.kr/bbs/board.php?bo_table=sky_advertisement&wr_id=3">광고안내</a></li>
<li><a href="https://ena.skylifetv.co.kr/bbs/board.php?bo_table=sky_online">사업안내</a></li>
<li><a href="https://mediagenie.co.kr/announce">회사공고</a></li>
<li><a href="https://ena.skylifetv.co.kr/bbs/board.php?bo_table=sky_job">채용</a></li>
<li><a href="https://ena.skylifetv.co.kr/bbs/board.php?bo_table=ethics">윤리경영</a></li>
</ul>
<a href="javascript:;" id="top_btn" class="totop">맨위로</a>
</div>
</div>
<div class="ft_cont">
<div class="wfix">
<a href="https://ena.skylifetv.co.kr/" class="logo"><img src="https://mediagenie.co.kr/img/ft_logo_sky.png" alt="skyTV"></a>
<div class="ft_info">
<span>대표이사 : 윤용필</span>
<span>사업자등록번호 : 104-81-86162</span><br>
<span>주소 : 서울특별시 마포구 월드컵북로 54길 25(상암동 1596) S-city 3~5층</span><br>
<span><b>TEL</b> : 02-2146-0700</span>
<span><b>FAX</b> : 02-2146-0702</span>
<span>이메일 : help@skylifetv.co.kr</span>
<p class="copyrights">
Copyright 2022 스카이라이프티브이. All Rights Reserved.
<a href="https://mediagenie.co.kr/bbs/login.php" class="link_login"><i class="fa fa-user" aria-hidden="true"></i></a>
</div>
<div class="ft_contact">
<strong class="tit roboto">Contact</strong>
<div class="cont_contact">
<a href="tel:02-2146-0700" class=" roboto link_tel">02-2146-0700</a>
<a href="mailto:help@skylifetv.co.kr" class="mont link_email">help@skylifetv.co.kr</a>
</div>
</div>
</div>
</div>
</footer>
</div>
<script>
$(function() {
$("#top_btn").on("click", function() {
$("html, body").animate({scrollTop:0}, '500');
return false;
});
});
</script>
<!-- } 하단 끝 -->
<script>
$(function() {
// 폰트 리사이즈 쿠키있으면 실행
font_resize("container", get_cookie("ck_font_resize_rmv_class"), get_cookie("ck_font_resize_add_class"));
});
</script>
<!-- ie6,7에서 사이드뷰가 게시판 목록에서 아래 사이드뷰에 가려지는 현상 수정 -->
<!--[if lte IE 7]>
<script>
$(function() {
var $sv_use = $(".sv_use");
var count = $sv_use.length;
$sv_use.each(function() {
$(this).css("z-index", count);
$(this).css("position", "relative");
count = count - 1;
});
});
</script>
<![endif]-->
</body>
</html>

View File

@@ -0,0 +1,543 @@
<!doctype html>
<html lang="ko">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1.0,minimum-scale=0,maximum-scale=10">
<meta name="HandheldFriendly" content="true">
<meta name="format-detection" content="telephone=no">
<meta http-equiv="imagetoolbar" content="no">
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
<meta name="description" content="ENA DRAMA, ENA STORY, 채널칭, ONT, 헬스메디 채널 운영 및 오리지널 콘텐츠 제작">
<meta name="keywords" content="ENA DRAMA, ENA STORY, 채널칭, ONT, 헬스메디 채널 운영 및 오리지널 콘텐츠 제작">
<meta property="og:type" content="website">
<meta property="og:title" content="미디어지니 [Touch and Feel 콘텐츠 채널]">
<meta property="og:description" content="ENA DRAMA, ENA STORY, 채널칭, ONT, 헬스메디 채널 운영 및 오리지널 콘텐츠 제작">
<meta http-equiv="imagetoolbar" content="no">
<link rel="canonical" href="https://mediagenie.co.kr/">
<meta name="naver-site-verification" content="c04af30801bb12495fde71b4b4423ed13fb4a837" />
<title>미디어지니 [Touch and Feel 콘텐츠 채널]</title>
<link rel="stylesheet" href="https://mediagenie.co.kr/css/common.css?ver=210618">
<link rel="stylesheet" href="https://mediagenie.co.kr/js/font-awesome/css/font-awesome.min.css?ver=210618">
<link rel="stylesheet" href="https://mediagenie.co.kr/css/contents.css?ver=210618">
<!--[if lte IE 8]>
<script src="https://mediagenie.co.kr/js/html5.js"></script>
<![endif]-->
<script>
// 자바스크립트에서 사용하는 전역변수 선언
var g5_url = "https://mediagenie.co.kr";
var g5_bbs_url = "https://mediagenie.co.kr/bbs";
var g5_is_member = "";
var g5_is_admin = "";
var g5_is_mobile = "";
var g5_bo_table = "";
var g5_sca = "";
var g5_editor = "";
var g5_cookie_domain = "";
</script>
<script src="https://momentjs.com/downloads/moment.js"></script>
<script src="https://mediagenie.co.kr/js/jquery-1.12.4.min.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/jquery-migrate-1.4.1.min.js?ver=210618"></script>
<script src="https://code.jquery.com/ui/1.13.1/jquery-ui.min.js"></script>
<script src="https://mediagenie.co.kr/js/jquery.menu.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/common.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/wrest.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/placeholders.min.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/slick.js?ver=210618"></script>
<script src="https://mediagenie.co.kr/js/genie.js?ver=210618"></script>
</head>
<body>
<div id="wrapper" class="channel">
<!-- 상단 시작 { -->
<header id="header">
<div class="wfix">
<h1 id="h1"><a href="https://ena.skylifetv.co.kr/" class="logo">skyTV</a></h1>
<button type="button" class="tgl_sns mo"><i>SNS 보기</i></button>
<div id="tnb">
<ul class="lst mont">
<li class="ENA"><a href="http://ena.skylifetv.co.kr/ENA" target="_blank">ENA</a></li>
<li class="ENA_PLAY"><a href="http://ena.skylifetv.co.kr/ENA_PLAY" target="_blank">ENA PLAY</a></li>
<li class="ENA_DRAMA"><a href="https://mediagenie.co.kr/ENA_DRAMA">ENA DRAMA</a></li>
<li class="ENA_STORY"><a href="https://mediagenie.co.kr/ENA_STORY">ENA STORY</a></li>
<li class="CHING"><a href="https://mediagenie.co.kr/CHING">CHING</a></li>
<li class="ONT"><a href="https://mediagenie.co.kr/ONT">ONT</a></li>
<li class="Healthmedi"><a href="https://mediagenie.co.kr/Healthmedi">Healthmedi</a></li>
</ul>
</div>
<nav id="menu">
<ul class="lst mont">
<li class="d1">
<a href="https://mediagenie.co.kr/contents/schedule.php" class="d1_link"><span class="name_menu">편성표</span></a>
<ul class="sub">
<li class="d2"><a href="https://mediagenie.co.kr/contents/schedule.php" class="d2_link"><span class="name_menu">편성표</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/number" class="d2_link"><span class="name_menu">채널번호</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/contents/qton.php" class="d2_link"><span class="name_menu">큐톤</span></a></li>
</ul>
</li>
<li class="d1">
<a href="/program" class="d1_link"><span class="name_menu">프로그램</span></a>
<ul class="sub">
<li class="d2"><a href="/program" class="d2_link"><span class="name_menu">프로그램</span></a></li>
</ul>
</li>
<li class="d1">
<a href="https://mediagenie.co.kr/notice" class="d1_link"><span class="name_menu">공지사항</span></a>
<ul class="sub">
<li class="d2"><a href="https://mediagenie.co.kr/notice" class="d2_link"><span class="name_menu">공지사항</span></a></li>
</ul>
</li>
<li class="d1">
<a href="https://mediagenie.co.kr/ENA_DRAMA" class="d1_link"><span class="name_menu">채널소개</span></a>
<ul class="sub mont">
<li class="d2"><a href="https://mediagenie.co.kr/ENA_DRAMA" class="d2_link"><span class="name_menu">ENA DRAMA</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/ENA_STORY" class="d2_link"><span class="name_menu">ENA STORY</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/CHING" class="d2_link"><span class="name_menu">CHING</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/ONT" class="d2_link"><span class="name_menu">ONT</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/Healthmedi" class="d2_link"><span class="name_menu">Healthmedi</span></a></li>
</ul>
</li>
</ul>
</nav>
<div id="hd_sns">
<ul class="lst">
<li class="sns_youtube"><a href="https://www.youtube.com/c/ENA_PICK/videos" target="_blank">유튜브</a></li>
<li class="sns_facebook"><a href="https://www.facebook.com/mediagenietv" target="_blank">페이스북</a></li>
<li class="sns_blog"><a href="https://blog.naver.com/hyundaimediaofficial" target="_blank">블로그</a></li>
<li class="sns_insta"><a href="https://www.instagram.com/enadrama.ch/" target="_blank">인스타그램</a></li>
</ul>
</div>
<button type="button" class="tgl_menu mo"><i>전체메뉴</i></button>
<nav id="lnb" class="mo">
<button type="button" class="close">닫기</button>
<div class="inr">
<div class="hd_lnb"><a href="https://mediagenie.co.kr"><img src="https://mediagenie.co.kr/img/logo_skytv.png" alt="skyTV"></a></div>
<ul class="lnb_lst_channel">
<li><a href="https://mediagenie.co.kr/ENA_DRAMA"><img src="https://mediagenie.co.kr/img/chn_logo_ENA_DRAMA.png"></a></li>
<li><a href="https://mediagenie.co.kr/ENA_STORY"><img src="https://mediagenie.co.kr/img/chn_logo_ENA_STORY.png"></a></li>
<li><a href="http://ena.skylifetv.co.kr/ENA" target="_blank"><img src="https://mediagenie.co.kr/img/chn_logo_ENA.png"></a></li>
<li><a href="http://ena.skylifetv.co.kr/ENA_PLAY" target="_blank"><img src="https://mediagenie.co.kr/img/chn_logo_ENA_PLAY.png"></a></li>
</ul>
<ul class="lst">
<li class="d1 on">
<strong class="d1_tit"><span class="name_menu">편성표</span></strong>
<ul class="sub" style="display:block;">
<li class="d2"><a href="https://mediagenie.co.kr/contents/schedule.php" class="d2_link"><span class="name_menu">편성표</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/number" class="d2_link"><span class="name_menu">채널번호</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/contents/qton.php" class="d2_link"><span class="name_menu">큐톤</span></a></li>
</ul>
</li>
<li class="d1">
<strong class="d1_tit"><span class="name_menu">프로그램</span></strong>
<ul class="sub">
<li class="d2"><a href="/program" class="d2_link"><span class="name_menu">프로그램</span></a></li>
</ul>
</li>
<li class="d1">
<strong class="d1_tit"><span class="name_menu">공지사항</span></strong>
<ul class="sub">
<li class="d2"><a href="https://mediagenie.co.kr/notice" class="d2_link"><span class="name_menu">공지사항</span></a></li>
</ul>
</li>
<li class="d1 on">
<strong class="d1_tit"><span class="name_menu">채널소개</span></strong>
<ul class="sub mont" style="display:block;">
<li class="d2"><a href="https://mediagenie.co.kr/ENA_DRAMA" class="d2_link"><span class="name_menu">ENA DRAMA</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/ENA_STORY" class="d2_link"><span class="name_menu">ENA STORY</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/CHING" class="d2_link"><span class="name_menu">CHING</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/ONT" class="d2_link"><span class="name_menu">ONT</span></a></li>
<li class="d2"><a href="https://mediagenie.co.kr/Healthmedi" class="d2_link"><span class="name_menu">헬스메디</span></a></li>
</ul>
</li>
</ul>
</div>
</nav>
</div>
</header>
<!-- } 상단 끝 -->
<hr>
<!-- 콘텐츠 시작 { -->
<div id="container" class="ena_drama">
<div id="visual" style="background-color:#478baf">
<div class="bg mo" style="background-image:url(https://mediagenie.co.kr/data/file/channel1/);"></div>
<div class="bg" style="background-image:url(https://mediagenie.co.kr/data/file/channel1/);"></div>
</div>
<div id="contents">
<!--
<section class="section tit_channel">
-->
<section class="section tit_channel type2">
<!--
-->
<div class="wfix">
<strong class="tit">드라마틱 DNA, <b class="mont emph">ENA DRAMA</b></strong>
<div class="cont">
<strong class="emph subTit"><p><span style="font-size:36px;color:rgb(238,42,48);">최고를 꿈꾸는 드라마 전문채널</span>&nbsp;</p></strong>
<p class="desc">3049 여성들의 취향을 저격할 드라마 전문 큐레이션 채널<br />
드라마 덕후들을 위한 즐거운 커뮤니티장<br />
가장 HOT한 드라마를 가장 빠르게 !!</p>
</div>
<!--
</div> -->
</div>
</section>
<!-- 프로그램
<section class="section programs">
<div class="wfix">
<h4 class="tit_sec">프로그램</h4>
<div class="wrap_program">
<div class="lst">
<div class="item">
<a href="" class="link">
<div class="thumb"><img src="https://mediagenie.co.kr/data/file/channel1/1954331223_7YH3g96B_80130f97ee6ea9995e5fe8b49eaabe8f18ec42d9.ai" alt=""></div>
<strong class="tit_item ellip"></strong>
</a>
</div>
<div class="item">
<a href="" class="link">
<div class="thumb"><img src="/" alt=""></div>
<strong class="tit_item ellip"></strong>
</a>
</div>
<div class="item">
<a href="" class="link">
<div class="thumb"><img src="/" alt=""></div>
<strong class="tit_item ellip"></strong>
</a>
</div>
<div class="item">
<a href="" class="link">
<div class="thumb"><img src="/" alt=""></div>
<strong class="tit_item ellip"></strong>
</a>
</div>
</div>
</div>
</div>
</section>
-->
<section id="sec_sche" class="section wrap_schedule">
<div class="wfix">
<h4 class="tit_sec">실시간 편성표</h4>
<div class="wrap_lst_date">
<ul class="lst day7">
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230124#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.24</span>
<span class="day">화요일</span>
</div>
</a>
</li>
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230125#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.25</span>
<span class="day">수요일</span>
</div>
</a>
</li>
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230126#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.26</span>
<span class="day">목요일</span>
</div>
</a>
</li>
<li class="onAir">
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230127#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">
1.27 <em class="mo">23.01.27</em>
</span>
<span class="day">금요일</span>
</div>
</a>
</li>
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230128#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.28</span>
<span class="day">토요일</span>
</div>
</a>
</li>
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230129#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.29</span>
<span class="day">일요일</span>
</div>
</a>
</li>
<li>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230130#sec_sche" class="inr">
<div class="cont">
<span class="date roboto">1.30</span>
<span class="day">월요일</span>
</div>
</a>
</li>
</ul>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230126#sec_sche" class="arw prev">이전</a>
<a href="https://mediagenie.co.kr/ENA_DRAMA?qd=20230128#sec_sche" class="arw next">다음</a>
</div>
<div class="ft_tbl">
<a href="javascript:;" class="tgl">편성표 자세히 보기</a>
<p class="refer">* 이 편성표는 방송사 사정에 따라 변경 될 수 있습니다.</p>
</div>
<div class="lgd">
<ul class="lst">
<li><span class="lgd_lab mont re"></span><span class="desc">재방송</span></li>
<li><span class="lgd_lab mont orig"></span><span class="desc">본방송</span></li>
<li><span class="lgd_lab mont"></span><span class="desc">일반방송</span></li>
<li><span class="lgd_lab mont"></span><span class="desc">화면해설</span></li>
<li><span class="lgd_lab mont"></span><span class="desc">수화방송</span></li>
<li><span class="lgd_lab mont"></span><span class="desc">자막방송</span></li>
<li><span class="lgd_lab mont"></span><span class="desc">음성다중</span></li>
<li><span class="lgd_lab mont">SD</span><span class="desc">일반화질</span></li>
<li><span class="lgd_lab mont">HD</span><span class="desc">고화질</span></li>
<li><span class="lgd_lab mont">UHD</span><span class="desc">초고화질</span></li>
</ul>
<div class="mo lst_age">
<ul class="lst">
<li><span class="lgd_lab mont">ALL</span></li>
<li><span class="lgd_lab">7</span></li>
<li><span class="lgd_lab">12</span></li>
<li><span class="lgd_lab">15</span></li>
<li><span class="lgd_lab age19">19</span></li>
</ul>
<span class="desc">연령대 별 시청 가능</span>
</div>
</div>
</div>
</section>
<section id="sec_num" class="section channelNum">
<div class="wfix">
<h4 class="tit_sec">채널 번호</h4>
</div>
<div class="wrap_number">
<div class="sch_area">
<div class="wfix">
<div class="inr_sch">
<strong class="tit">우리지역찾기</strong>
<div class="wrap_sch">
<div class="wrap_slt">
<select id="area1" class="slt_area" onchange="schArea(this)" title="시,도 선택">
<option value="">시/도</option>
<option value="강원" data-area="2">강원</option>
<option value="경기" data-area="3">경기</option>
<option value="경남" data-area="4">경남</option>
<option value="경북" data-area="5">경북</option>
<option value="광주" data-area="6">광주</option>
<option value="대구" data-area="7">대구</option>
<option value="대전" data-area="8">대전</option>
<option value="부산" data-area="9">부산</option>
<option value="서울" data-area="10">서울</option>
<option value="세종" data-area="11">세종</option>
<option value="울산" data-area="12">울산</option>
<option value="인천" data-area="13">인천</option>
<option value="전남" data-area="14">전남</option>
<option value="전북" data-area="15">전북</option>
<option value="제주" data-area="16">제주</option>
<option value="충남" data-area="17">충남</option>
<option value="충북" data-area="18">충북</option>
</select>
</div>
<div class="wrap_slt">
<select id="area2" class="slt_area" title="시,구,군 선택">
<option value="">시/구/군</option>
</select>
</div>
<button type="button" onclick="sch_result()" class="btn_sch">검색</button>
</div>
</div>
</div>
</div>
<div class="lst_numbers">
<div class="wfix">
<ul class="lst">
<li>
<strong class="roboto num">46</strong>
<span class="logo"><img src="../img/telecom_btv.png" alt="btv"></span>
<a href="https://www.skbroadband.com/" class="link" target="_blank">바로가기</a>
</li>
<li>
<strong class="roboto num">999</strong>
<span class="logo"><img src="../img/telecom_olleh.png" alt="olleh"></span>
<a href="https://tv.kt.com/" class="link" target="_blank">바로가기</a>
</li>
<li>
<strong class="roboto num">73</strong>
<span class="logo"><img src="../img/telecom_lg.png" alt="lg"></span>
<a href="https://www.uplus.co.kr/" class="link" target="_blank">바로가기</a>
</li>
<li>
<strong class="roboto num">36</strong>
<span class="logo"><img src="../img/telecom_ktsky.png" alt="ktsky"></span>
<a href="https://www.skylife.co.kr/" class="link" target="_blank">바로가기</a>
</li>
</ul>
</div>
</div>
</div>
<script>
function schArea(sel){
var sel_arr = $(sel).find("option:selected").data('area');
location.href = 'https://mediagenie.co.kr/ENA_DRAMA?qd=&chn=ENA_DRAMA&area_slt1='+sel_arr+'#sec_num';
}
function sch_result(){
var sel_arr = $('#area1').find("option:selected").data('area');
var sel_arr2 = $('#area2').find("option:selected").data('area');
location.href = 'https://mediagenie.co.kr/ENA_DRAMA?qd=&chn=ENA_DRAMA&area_slt1='+sel_arr+'&area_slt2='+sel_arr2+'#sec_num';
}
</script>
</section>
<div class="ft_chn">
<div class="wfix">
<div class="wrap_download">
<a href="https://mediagenie.co.kr/bbs/download.php?bo_table=channel1&amp;wr_id=2&amp;no=2" class="link_download"><span class="inr"><b class="mont emph">ENA DRAMA</b> <span class="ib"><em>채널</em> 로고 다운받기</span></span></a>
</div>
<div class="wrap_contact">채널문의 <a href="mailto:ks.shin@kt.com" class="mont"><span class="mo">채널문의</span>ks.shin@kt.com</a></div>
</div>
</div>
</div>
</div>
<script>
$(document).ready(function(){
if($('.wrap_schedule tr.onAir').length > 0){
var p = $('.wrap_schedule tr.onAir').prev();
var on = $('.wrap_schedule tr.onAir');
var n = $('.wrap_schedule tr.onAir').next();
}else {
var p = $('.wrap_schedule tr').eq(1)
var on = $('.wrap_schedule tr').eq(2)
var n = $('.wrap_schedule tr').eq(3)
}
if($('#sec_sche .lst').hasClass('has_today')){
$('.wrap_schedule tbody tr').not(p).not(n).not(on).hide()
$('.wrap_schedule .tgl').click(function(){
$(this).toggleClass('on');
if($('.wrap_schedule').hasClass('on')){
$('.wrap_schedule').removeClass('on')
$('.wrap_schedule tbody tr').not(p).not(n).not(on).hide()
}else {
$('.wrap_schedule').addClass('on')
$('.wrap_schedule tr').show()
}
})
$('.wrap_schedule tbody tr.onAir:first-child').next().next().show()
}else {
$('.wrap_schedule tbody tr:nth-child(n+4)').hide()
$('.wrap_schedule .tgl').click(function(){
if($('.wrap_schedule').hasClass('on')){
$('.wrap_schedule').removeClass('on')
$('.wrap_schedule tbody tr:nth-child(n+4)').hide()
}else {
$('.wrap_schedule').addClass('on')
$('.wrap_schedule tr').show()
}
})
}
})
</script>
</div>
<!-- } 콘텐츠 끝 -->
<hr>
<!-- 하단 시작 { -->
<footer id="footer">
<div class="links">
<div class="wfix">
<ul class="lst">
<li><a href="https://ena.skylifetv.co.kr/theme/business/html/company/01.php">회사소개</a></li>
<li><a href="https://ena.skylifetv.co.kr/bbs/board.php?bo_table=history">연혁</a></li>
<li><a href="https://ena.skylifetv.co.kr/bbs/board.php?bo_table=sky_advertisement&wr_id=3">광고안내</a></li>
<li><a href="https://ena.skylifetv.co.kr/bbs/board.php?bo_table=sky_online">사업안내</a></li>
<li><a href="https://mediagenie.co.kr/announce">회사공고</a></li>
<li><a href="https://ena.skylifetv.co.kr/bbs/board.php?bo_table=sky_job">채용</a></li>
<li><a href="https://ena.skylifetv.co.kr/bbs/board.php?bo_table=ethics">윤리경영</a></li>
</ul>
<a href="javascript:;" id="top_btn" class="totop">맨위로</a>
</div>
</div>
<div class="ft_cont">
<div class="wfix">
<a href="https://ena.skylifetv.co.kr/" class="logo"><img src="https://mediagenie.co.kr/img/ft_logo_sky.png" alt="skyTV"></a>
<div class="ft_info">
<span>대표이사 : 윤용필</span>
<span>사업자등록번호 : 104-81-86162</span><br>
<span>주소 : 서울특별시 마포구 월드컵북로 54길 25(상암동 1596) S-city 3~5층</span><br>
<span><b>TEL</b> : 02-2146-0700</span>
<span><b>FAX</b> : 02-2146-0702</span>
<span>이메일 : help@skylifetv.co.kr</span>
<p class="copyrights">
Copyright 2022 스카이라이프티브이. All Rights Reserved.
<a href="https://mediagenie.co.kr/bbs/login.php" class="link_login"><i class="fa fa-user" aria-hidden="true"></i></a>
</div>
<div class="ft_contact">
<strong class="tit roboto">Contact</strong>
<div class="cont_contact">
<a href="tel:02-2146-0700" class=" roboto link_tel">02-2146-0700</a>
<a href="mailto:help@skylifetv.co.kr" class="mont link_email">help@skylifetv.co.kr</a>
</div>
</div>
</div>
</div>
</footer>
</div>
<script>
$(function() {
$("#top_btn").on("click", function() {
$("html, body").animate({scrollTop:0}, '500');
return false;
});
});
</script>
<!-- } 하단 끝 -->
<script>
$(function() {
// 폰트 리사이즈 쿠키있으면 실행
font_resize("container", get_cookie("ck_font_resize_rmv_class"), get_cookie("ck_font_resize_add_class"));
});
</script>
<!-- ie6,7에서 사이드뷰가 게시판 목록에서 아래 사이드뷰에 가려지는 현상 수정 -->
<!--[if lte IE 7]>
<script>
$(function() {
var $sv_use = $(".sv_use");
var count = $sv_use.length;
$sv_use.each(function() {
$(this).css("z-index", count);
$(this).css("position", "relative");
count = count - 1;
});
});
</script>
<![endif]-->
</body>
</html>

View File

@@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<site site="mediagenie.co.kr">
<channels>
<channel lang="ko" xmltv_id="CHING.kr" site_id="CHING">CHING</channel>
<channel lang="ko" xmltv_id="ENADRAMA.kr" site_id="ENA_DRAMA">ENA DRAMA</channel>
<channel lang="ko" xmltv_id="ENASTORY.kr" site_id="ENA_STORY">ENA STORY</channel>
<channel lang="ko" xmltv_id="Healthmedi.kr" site_id="Healthmedi">Healthmedi</channel>
<channel lang="ko" xmltv_id="ONT.kr" site_id="ONT">ONT</channel>
</channels>
</site>

View File

@@ -0,0 +1,77 @@
const cheerio = require('cheerio')
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)
module.exports = {
site: 'mediagenie.co.kr',
days: 2,
url({ channel, date }) {
return `https://mediagenie.co.kr/${channel.site_id}/?qd=${date.format('YYYYMMDD')}`
},
request: {
headers: {
cookie: 'CUPID=d5ed6b77012aef2b4d4365ffd3a1a3a4'
}
},
parser({ content, date }) {
const programs = []
const items = parseItems(content, date)
items.forEach(item => {
const $item = cheerio.load(item)
const prev = programs[programs.length - 1]
const start = parseStart($item, date)
if (!start) return
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),
rating: parseRating($item),
start,
stop
})
})
return programs
}
}
function parseTitle($item) {
return $item('.col2').clone().children().remove().end().text().trim()
}
function parseRating($item) {
const rating = $item('.col6').text().trim()
return rating
? {
system: 'KMRB',
value: rating
}
: null
}
function parseStart($item, date) {
const time = $item('.col1').text().trim()
if (!/^\d{2}:\d{2}$/.test(time)) return null
return dayjs.tz(`${date.format('YYYY-MM-DD')} ${time}`, 'YYYY-MM-DD HH:mm', 'Asia/Seoul')
}
function parseItems(content, channel, date) {
const $ = cheerio.load(content)
return $('.tbl > tbody > tr').toArray()
}

View File

@@ -0,0 +1,65 @@
// npx epg-grabber --config=sites/mediagenie.co.kr/mediagenie.co.kr.config.js --channels=sites/mediagenie.co.kr/mediagenie.co.kr.channels.xml --output=guide.xml --days=2
const { parser, url, request } = require('./mediagenie.co.kr.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('2023-01-25', 'YYYY-MM-DD').startOf('d')
const channel = {
site_id: 'ENA_DRAMA',
xmltv_id: 'ENADRAMA.kr'
}
it('can generate valid url', () => {
expect(url({ channel, date })).toBe('https://mediagenie.co.kr/ENA_DRAMA/?qd=20230125')
})
it('can generate valid request headers', () => {
expect(request.headers).toMatchObject({
cookie: 'CUPID=d5ed6b77012aef2b4d4365ffd3a1a3a4'
})
})
it('can parse response', () => {
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.html'), 'utf8')
let results = parser({ content, date })
results = results.map(p => {
p.start = p.start.toJSON()
p.stop = p.stop.toJSON()
return p
})
expect(results[0]).toMatchObject({
start: '2023-01-24T15:20:00.000Z',
stop: '2023-01-24T16:34:00.000Z',
title: `대행사`,
rating: {
system: 'KMRB',
value: '15'
}
})
expect(results[16]).toMatchObject({
start: '2023-01-25T14:27:00.000Z',
stop: '2023-01-25T14:57:00.000Z',
title: `법쩐`,
rating: {
system: 'KMRB',
value: '15'
}
})
})
it('can handle empty guide', () => {
const results = parser({
date,
content: fs.readFileSync(path.resolve(__dirname, '__data__/no_content.html'), 'utf8')
})
expect(results).toMatchObject([])
})

View File

@@ -214,8 +214,7 @@
<channel lang="en" xmltv_id="KYAZDT2.us" site_id="metv-plus-kyazdt2-houston-tx/15499">MeTV Plus (KYAZ-DT2) Houston TX</channel>
<channel lang="en" xmltv_id="LogoEast.us" site_id="logo-east/2091">Logo East</channel>
<channel lang="en" xmltv_id="LogoWest.us" site_id="logo-pacific/13460">Logo West</channel>
<channel lang="en" xmltv_id="MagnoliaNetworEast.us" site_id="magnolia-hd-east/8114">Magnolia East</channel>
<channel lang="en" xmltv_id="MagnoliaNetwork.us" site_id="magnolia-hd-east/8114">Magnolia Network</channel>
<channel lang="en" xmltv_id="MagnoliaNetworkEast.us" site_id="magnolia-hd-east/8114">Magnolia East</channel>
<channel lang="en" xmltv_id="MeTV.us" site_id="metv-network/16325">MeTV Network</channel>
<channel lang="en" xmltv_id="MGMPlusDriveIn.us" site_id="epix-drivein/11487">MGM+ Drive-In</channel>
<channel lang="en" xmltv_id="MGMPlusEast.us" site_id="epix-hd-east/7610">MGM+ East</channel>