mirror of
https://github.com/iptv-org/epg.git
synced 2025-05-10 09:00:07 -04:00
Merge pull request #1153 from iptv-org/add-tvpassport.com
Add guide from tvpassport.com
This commit is contained in:
commit
0788a18adf
5 changed files with 945 additions and 0 deletions
17
.github/workflows/tvpassport.com.yml
vendored
Normal file
17
.github/workflows/tvpassport.com.yml
vendored
Normal file
|
@ -0,0 +1,17 @@
|
|||
name: tvpassport.com
|
||||
on:
|
||||
schedule:
|
||||
- cron: '0 3 * * *'
|
||||
workflow_dispatch:
|
||||
workflow_run:
|
||||
workflows: [_trigger]
|
||||
types:
|
||||
- completed
|
||||
jobs:
|
||||
load:
|
||||
uses: ./.github/workflows/_load.yml
|
||||
with:
|
||||
site: ${{github.workflow}}
|
||||
secrets:
|
||||
APP_ID: ${{ secrets.APP_ID }}
|
||||
APP_PRIVATE_KEY: ${{ secrets.APP_PRIVATE_KEY }}
|
578
sites/tvpassport.com/__data__/content.html
Normal file
578
sites/tvpassport.com/__data__/content.html
Normal file
File diff suppressed because one or more lines are too long
140
sites/tvpassport.com/tvpassport.com.config.js
Normal file
140
sites/tvpassport.com/tvpassport.com.config.js
Normal file
|
@ -0,0 +1,140 @@
|
|||
const axios = require('axios')
|
||||
const dayjs = require('dayjs')
|
||||
const cheerio = require('cheerio')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
|
||||
dayjs.extend(utc)
|
||||
dayjs.extend(timezone)
|
||||
dayjs.extend(customParseFormat)
|
||||
|
||||
module.exports = {
|
||||
site: 'tvpassport.com',
|
||||
url({ channel, date }) {
|
||||
return `https://www.tvpassport.com/tv-listings/stations/${channel.site_id}/${date.format(
|
||||
'YYYY-MM-DD'
|
||||
)}`
|
||||
},
|
||||
request: {
|
||||
headers: {
|
||||
Cookie: 'cisession=e49ff13191d6875887193cae9e324b44ef85768d;'
|
||||
}
|
||||
},
|
||||
parser: function ({ content }) {
|
||||
let programs = []
|
||||
const items = parseItems(content)
|
||||
for (let item of items) {
|
||||
const $item = cheerio.load(item)
|
||||
const start = parseStart($item)
|
||||
const duration = parseDuration($item)
|
||||
const stop = start.add(duration, 'm')
|
||||
programs.push({
|
||||
title: parseTitle($item),
|
||||
sub_title: parseSubTitle($item),
|
||||
description: parseDescription($item),
|
||||
icon: parseIcon($item),
|
||||
category: parseCategory($item),
|
||||
rating: parseRating($item),
|
||||
actors: parseActors($item),
|
||||
guest: parseGuest($item),
|
||||
director: parseDirector($item),
|
||||
start,
|
||||
stop
|
||||
})
|
||||
}
|
||||
|
||||
return programs
|
||||
},
|
||||
async channels() {
|
||||
const content = await axios
|
||||
.get(`https://www.tvpassport.com/tv-listings`, {
|
||||
headers: {
|
||||
Cookie: 'cisession=317b3a464bfe449650b7cc4b16ccf900a6646d88;'
|
||||
}
|
||||
})
|
||||
.then(r => r.data)
|
||||
.catch(console.log)
|
||||
const $ = cheerio.load(content)
|
||||
|
||||
return $('.channel_cell')
|
||||
.map((i, el) => {
|
||||
const site_id = $(el)
|
||||
.find('a')
|
||||
.attr('href')
|
||||
.replace('https://www.tvpassport.com/tv-listings/stations/', '')
|
||||
const name = $(el).find('.sr-only').text().trim()
|
||||
|
||||
return {
|
||||
site_id,
|
||||
name
|
||||
}
|
||||
})
|
||||
.get()
|
||||
}
|
||||
}
|
||||
|
||||
function parseDescription($item) {
|
||||
return $item('*').data('description')
|
||||
}
|
||||
|
||||
function parseIcon($item) {
|
||||
const showpicture = $item('*').data('showpicture')
|
||||
const url = new URL(showpicture, 'https://cdn.tvpassport.com/image/show/960x540/')
|
||||
|
||||
return url.href
|
||||
}
|
||||
|
||||
function parseTitle($item) {
|
||||
return $item('*').data('showname')
|
||||
}
|
||||
|
||||
function parseSubTitle($item) {
|
||||
return $item('*').data('episodetitle')
|
||||
}
|
||||
|
||||
function parseCategory($item) {
|
||||
return $item('*').data('showtype').split(', ')
|
||||
}
|
||||
|
||||
function parseActors($item) {
|
||||
return $item('*').data('cast').split(', ')
|
||||
}
|
||||
|
||||
function parseDirector($item) {
|
||||
return $item('*').data('director').split(', ')
|
||||
}
|
||||
|
||||
function parseGuest($item) {
|
||||
return $item('*').data('guest').split(', ')
|
||||
}
|
||||
|
||||
function parseRating($item) {
|
||||
const rating = $item('*').data('rating')
|
||||
|
||||
return rating
|
||||
? {
|
||||
system: 'MPA',
|
||||
value: rating.replace(/^TV/, 'TV-')
|
||||
}
|
||||
: null
|
||||
}
|
||||
|
||||
function parseStart($item) {
|
||||
const time = $item('*').data('st')
|
||||
|
||||
return dayjs.tz(time, 'YYYY-MM-DD HH:mm:ss', 'America/New_York')
|
||||
}
|
||||
|
||||
function parseDuration($item) {
|
||||
const duration = $item('*').data('duration')
|
||||
|
||||
return parseInt(duration)
|
||||
}
|
||||
|
||||
function parseItems(content) {
|
||||
if (!content) return []
|
||||
const $ = cheerio.load(content)
|
||||
|
||||
return $(`.station-listings .list-group-item`).toArray()
|
||||
}
|
63
sites/tvpassport.com/tvpassport.com.test.js
Normal file
63
sites/tvpassport.com/tvpassport.com.test.js
Normal file
|
@ -0,0 +1,63 @@
|
|||
// npx epg-grabber --config=sites/tvpassport.com/tvpassport.com.config.js --channels=sites/tvpassport.com/tvpassport.com_us.channels.xml --output=guide.xml --days=2
|
||||
// npm run channels:parse -- --config=./sites/tvpassport.com/tvpassport.com.config.js --output=./sites/tvpassport.com/tvpassport.com_us.channels.xml
|
||||
|
||||
const { parser, url, request } = require('./tvpassport.com.config.js')
|
||||
const fs = require('fs')
|
||||
const path = require('path')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
dayjs.extend(customParseFormat)
|
||||
dayjs.extend(utc)
|
||||
|
||||
const date = dayjs.utc('2022-10-04', 'YYYY-MM-DD').startOf('d')
|
||||
const channel = {
|
||||
site_id: 'youtoo-america-network/5463',
|
||||
xmltv_id: 'YTATV.us'
|
||||
}
|
||||
|
||||
it('can generate valid url', () => {
|
||||
expect(url({ channel, date })).toBe(
|
||||
'https://www.tvpassport.com/tv-listings/stations/youtoo-america-network/5463/2022-10-04'
|
||||
)
|
||||
})
|
||||
|
||||
it('can generate valid request headers', () => {
|
||||
expect(request.headers).toMatchObject({
|
||||
Cookie: 'cisession=e49ff13191d6875887193cae9e324b44ef85768d;'
|
||||
})
|
||||
})
|
||||
|
||||
it('can parse response', () => {
|
||||
const content = fs.readFileSync(path.resolve(__dirname, '__data__/content.html'))
|
||||
|
||||
let results = parser({ content })
|
||||
results = results.map(p => {
|
||||
p.start = p.start.toJSON()
|
||||
p.stop = p.stop.toJSON()
|
||||
return p
|
||||
})
|
||||
|
||||
expect(results[0]).toMatchObject({
|
||||
start: '2022-10-04T10:00:00.000Z',
|
||||
stop: '2022-10-04T10:30:00.000Z',
|
||||
title: 'Charlie Moore: No Offense',
|
||||
sub_title: 'Under the Influencer',
|
||||
category: ['Sports', 'Outdoors'],
|
||||
icon: 'https://cdn.tvpassport.com/image/show/960x540/69103.jpg',
|
||||
rating: {
|
||||
system: 'MPA',
|
||||
value: 'TV-G'
|
||||
},
|
||||
actors: ['John Reardon', 'Mayko Nguyen', 'Justin Kelly'],
|
||||
director: ['Rob McElhenney'],
|
||||
guest: ['Sean Penn'],
|
||||
description:
|
||||
'Celebrity interviews while fishing in various locations throughout the United States.'
|
||||
})
|
||||
})
|
||||
|
||||
it('can handle empty guide', () => {
|
||||
const result = parser({ content: '' })
|
||||
expect(result).toMatchObject([])
|
||||
})
|
147
sites/tvpassport.com/tvpassport.com_us.channels.xml
Normal file
147
sites/tvpassport.com/tvpassport.com_us.channels.xml
Normal file
|
@ -0,0 +1,147 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<site site="tvpassport.com">
|
||||
<channels>
|
||||
<channel lang="en" xmltv_id="W20CQD1.us" site_id="hope-channel-w20cqd-hempstead-ny/16436">Hope Channel (W20CQ-D) Hempstead, NY</channel>
|
||||
<channel lang="en" xmltv_id="W20CQD2.us" site_id="esperanza-w20cqd2-hempstead-ny/16437">Esperanza (W20CQ-D2) Hempstead, NY</channel>
|
||||
<channel lang="en" xmltv_id="WABCDT1.us" site_id="abc-wabc-new-york-ny/1769">ABC (WABC) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WABCDT2.us" site_id="localish-wabcdt2-new-york-ny/10497">Localish (WABC-DT2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WABCDT3.us" site_id="this-wabctv3-new-york-ny/11049">THIS (WABC-TV3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WABCDT4.us" site_id="hsn-wabctv4-new-york-ny/36168">HSN (WABC-TV4) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WASALD1.us" site_id="estrella-wasald-port-jervis-ny/11071">Estrella (WASA-LD) Port Jervis, NY</channel>
|
||||
<channel lang="en" xmltv_id="WCBSDT1.us" site_id="cbs-wcbs-new-york-ny/1766">CBS (WCBS) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WCBSDT2.us" site_id="start-tv-wcbstv2-new-york-ny/11045">Start TV (WCBS-TV2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WCBSDT3.us" site_id="dabl-wcbstv3-new-york-ny/34131">DABL (WCBS-TV3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WDVBCD1.us" site_id="the-country-network-wdvb-edison-nj/11067">The Country Network (WDVB) Edison, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WDVBCD2.us" site_id="sstn-wdvbcd2-edison-nj/11068">SSTN (WDVB-CD2) Edison, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WEDWDT1.us" site_id="connecticut-public-television-wedw-bridgeport/2065">Connecticut Public Television (WEDW) Bridgeport</channel>
|
||||
<channel lang="en" xmltv_id="WEDWDT3.us" site_id="cptv-spirit-wedwdt3-bridgeport-ct/11910">CPTV Spirit (WEDW-DT3) Bridgeport, CT</channel>
|
||||
<channel lang="en" xmltv_id="WFTYDT1.us" site_id="unimas-wfty-smithtown-ny/1961">UniMás (WFTY) Smithtown, NY</channel>
|
||||
<channel lang="en" xmltv_id="WFTYDT2.us" site_id="uni-wftydt2-new-york-ny/1962">UNI (WFTY-DT2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WFTYDT4.us" site_id="ion-mystery-wftydt4-smithtown-ny/19460">ION Mystery (WFTY-DT4) Smithtown, NY</channel>
|
||||
<channel lang="en" xmltv_id="WFUTDT2.us" site_id="true-crime-network-wfutdt2-newark-nj/16472">True Crime Network (WFUT-DT2) Newark, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WFUTDT3.us" site_id="gettv-wfutdt3-newark-nj/16429">GetTV (WFUT-DT3) Newark, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WFUTDT4.us" site_id="ion-mystery-wfutdt4-newark-nj/16471">ION Mystery (WFUT-DT4) Newark, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WJLPDT2.us" site_id="laff-wjlp2-new-jersey/15178">Laff (WJLP2) New Jersey</channel>
|
||||
<channel lang="en" xmltv_id="WJLPDT3.us" site_id="grit-tv-wjlp3-new-jerseynew-york/20040">Grit TV (WJLP3) New Jersey/New York</channel>
|
||||
<channel lang="en" xmltv_id="WJLPDT4.us" site_id="ion-mystery-wjlp4-new-jerseynew-york/20041">ION Mystery (WJLP4) New Jersey/New York</channel>
|
||||
<channel lang="en" xmltv_id="WJLPDT5.us" site_id="retro-tv-wjlp5-middletown-township-nj/35854">Retro TV (WJLP5) Middletown Township, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WJLPDT6.us" site_id="heartland-wjlp6-middletown-township-nj/33652">Heartland (WJLP6) Middletown Township, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WKOBLD1.us" site_id="azteca-wkob-new-york-ny/5096">Azteca (WKOB) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WKOBLD2.us" site_id="daystar-wkobld2-new-york-ny/11083">Daystar (WKOB-LD2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WKOBLD3.us" site_id="peace-tv-wkobld3-new-york-ny/11085">Peace TV (WKOB-LD3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WKOBLD5.us" site_id="sonlife-network-wkobld5-new-york-ny/11087">SonLife Network (WKOB-LD5) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WKOBLD6.us" site_id="estrella-wkobdt6-new-york-ny/16453">Estrella (WKOB-DT6) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WKOBLD7.us" site_id="shop-lc-wkobdt7-new-york-ny/16454">Shop LC (WKOB-DT7) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WKOBLD8.us" site_id="ontv4u-wkobdt8-new-york-ny/17491">ONTV4U (WKOB-DT8) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WLIWDT1.us" site_id="pbs-wliw-long-island-ny/1775">PBS (WLIW) Long Island, NY</channel>
|
||||
<channel lang="en" xmltv_id="WLIWDT2.us" site_id="create-wliw2-long-island-ny/6202">Create (WLIW2) Long Island, NY</channel>
|
||||
<channel lang="en" xmltv_id="WLIWDT3.us" site_id="pbs-world-wliw3-long-island-ny/6203">PBS World (WLIW3) Long Island, NY</channel>
|
||||
<channel lang="en" xmltv_id="WLNYDT2.us" site_id="comet-tv-wlnytv2-riverhead-ny/34536">Comet TV (WLNY-TV2) Riverhead, NY</channel>
|
||||
<channel lang="en" xmltv_id="WLNYDT3.us" site_id="stadium-wlnytv3-riverhead-ny/34537">Stadium (WLNY-TV3) Riverhead, NY</channel>
|
||||
<channel lang="en" xmltv_id="WLNYDT4.us" site_id="this-wlnytv4-riverhead-ny/34538">THIS (WLNY-TV4) Riverhead, NY</channel>
|
||||
<channel lang="en" xmltv_id="WLNYDT5.us" site_id="circle-wlnytv5-riverhead-ny/34539">Circle (WLNY-TV5) Riverhead, NY</channel>
|
||||
<channel lang="en" xmltv_id="WMBCDT2.us" site_id="quest-wmbctv2-newton-nj/16467">Quest (WMBC-TV2) Newton, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WMBCDT5.us" site_id="new-tang-dynasty-tv-wmbcdt5-newton-nj/15033">New Tang Dynasty TV (WMBC-DT5) Newton, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WMBCDT7.us" site_id="aliento-vision-wmbctv7-newton-nj/16468">Aliento Vision (WMBC-TV7) Newton, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WMBQCD1.us" site_id="biztv-wmbqcd-new-york-ny/16459">Biz-TV (WMBQ-CD) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WMBQCD2.us" site_id="hope-channel-wmbqcd2-new-york-ny/16460">Hope Channel (WMBQ-CD2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNBCDT1.us" site_id="nbc-wnbc-new-york-ny/1767">NBC (WNBC) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNBCDT2.us" site_id="cozi-wnbcdt2-new-york-ny/10919">Cozi (WNBC-DT2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNDTCD1.us" site_id="fnx-wndtcd-manhattan-ny/34515">FNX (WNDT-CD) Manhattan, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNETDT1.us" site_id="pbs-wnet-new-york-ny/1774">PBS (WNET) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNETDT2.us" site_id="pbs-kids-wnetdt2-new-york-ny/2088">PBS Kids (WNET-DT2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNETDT3.us" site_id="vme-wnetdt3-new-york-ny/7291">V-Me (WNET-DT3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNJBDT1.us" site_id="nj-pbs-wnjb-new-brunswick-nj/2124">NJ PBS (WNJB) New Brunswick, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WNJNDT1.us" site_id="nj-pbs-wnjn-montclair-nj/2574">NJ PBS (WNJN) Montclair, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WNJTDT1.us" site_id="nj-pbs-wnjt-trenton-nj/2564">NJ PBS (WNJT) Trenton, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WNJTDT2.us" site_id="nhk-world-wnjttv2-trenton-nj/32845">NHK World (WNJT-TV2) Trenton, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WNJUDT1.us" site_id="telemundo-wnju-teterboro-nj/1772">Telemundo (WNJU) Teterboro, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WNJUDT2.us" site_id="telexitos-wnju2-teterboro-nj/10749">TeleXitos (WNJU2) Teterboro, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WNMFLD1.us" site_id="infomercials-wnmf-new-york-ny/17860">Infomercials (WNMF) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNMFLD2.us" site_id="jewelry-tv-wnmfld2-new-york-ny/17861">Jewelry TV (WNMF-LD2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNXYLD1.us" site_id="cgtn-wnxyld-new-york-ny/16456">CGTN (WNXY-LD) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNXYLD2.us" site_id="cctv4-wnxyld2-new-york-ny/16457">CCTV-4 (WNXY-LD2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNXYLD3.us" site_id="cgtn-spanish-wnxyld3-new-york-ny/16458">CGTN Spanish (WNXY-LD3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYEDT1.us" site_id="nyc-life-wnyedt1-new-york-ny/10011">NYC Life (WNYE-DT1) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYEDT2.us" site_id="nyc-gov-wnyedt2-new-york-ny/11074">NYC Gov (WNYE-DT2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYEDT3.us" site_id="cuny-wnyedt3-new-york-ny/11075">CUNY (WNYE-DT3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYJDT3.us" site_id="france-24-wnyjdt3-west-milford-nj/16470">France 24 (WNYJ-DT3) West Milford, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WNYNLD1.us" site_id="azteca-wnyn-new-york-ny/17851">Azteca (WNYN) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYNLD3.us" site_id="azteca-wnynld3-new-york-ny/5512">Azteca (WNYN-LD3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYWDT1.us" site_id="fox-wnyw-new-york-ny/1638">FOX (WNYW) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYWDT2.us" site_id="movies-wnyw2-new-york-ny/11048">Movies! (WNYW2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYWDT3.us" site_id="mnt-wnyw3-new-york-ny/17850">MNT (WNYW3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYWDT4.us" site_id="the-grio-wnyw4-new-york-ny/31537">The Grio (WNYW4) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYWDT5.us" site_id="decades-wnyw5-new-york-ny/34342">Decades (WNYW5) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYXLD1.us" site_id="cgtn-wnyxld-new-york-ny/16441">CGTN (WNYX-LD) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYXLD2.us" site_id="cctv4-wnyxld2-new-york-ny/16442">CCTV-4 (WNYX-LD2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYXLD3.us" site_id="cgtn-spanish-wnyxld3-new-york-ny/16445">CGTN Spanish (WNYX-LD3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYXLD4.us" site_id="revn-wnyxld4-new-york-ny/16447">REV'N (WNYX-LD4) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WNYXLD5.us" site_id="retro-tv-wnyxld5-new-york-ny/17849">Retro TV (WNYX-LD5) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WPIXDT2.us" site_id="antenna-wpix2-new-york-ny/10745">Antenna (WPIX2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WPIXDT3.us" site_id="court-tv-wpix3-new-york-ny/9723">Court TV (WPIX3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WPIXDT4.us" site_id="rewind-tv-us-wpix4-new-york-ny/32844">Rewind TV US (WPIX4) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WPVIDT2.us" site_id="localish-wpvidt2-philadelphia-pa/8852">Localish (WPVI-DT2) Philadelphia, PA</channel>
|
||||
<channel lang="en" xmltv_id="WPVIDT3.us" site_id="this-wpvitv3-philadelphia-pa/14662">THIS (WPVI-TV3) Philadelphia, PA</channel>
|
||||
<channel lang="en" xmltv_id="WPXNDT1.us" site_id="ion-wpxn-new-york-ny/1778">ION (WPXN) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WPXNDT2.us" site_id="bounce-wpxntv2-new-york-ny/11076">Bounce (WPXN-TV2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WPXNDT3.us" site_id="ion-mystery-wpxntv3-new-york-ny/11077">ION Mystery (WPXN-TV3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WPXNDT4.us" site_id="defy-wpxntv4-new-york-ny/12189">Defy (WPXN-TV4) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WPXNDT5.us" site_id="laff-wpxntv5-new-york-ny/12256">Laff (WPXN-TV5) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WPXNDT6.us" site_id="truereal-wpxntv6-new-york-ny/11713">TrueReal (WPXN-TV6) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WPXNDT7.us" site_id="newsy-wpxntv7-new-york-ny/37059">Newsy (WPXN-TV7) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WPXOLD1.us" site_id="america-teve-wpxold-east-orange-nj/11080">América TeVé (WPXO-LD) East Orange, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WPXUDT2.us" site_id="court-tv-wpxutv2-jacksonville-nc/12046">Court TV (WPXU-TV2) Jacksonville, NC</channel>
|
||||
<channel lang="en" xmltv_id="WPXUDT3.us" site_id="grit-tv-wpxutv3-jacksonville-nc/12104">Grit TV (WPXU-TV3) Jacksonville, NC</channel>
|
||||
<channel lang="en" xmltv_id="WPXUDT4.us" site_id="laff-wpxutv4-jacksonville-nc/12225">Laff (WPXU-TV4) Jacksonville, NC</channel>
|
||||
<channel lang="en" xmltv_id="WPXUDT5.us" site_id="qvc-wpxutv5-jacksonville-nc/12292">QVC (WPXU-TV5) Jacksonville, NC</channel>
|
||||
<channel lang="en" xmltv_id="WRNNDT2.us" site_id="circle-wrnntv2-new-york/8687">Circle (WRNN-TV2) New York</channel>
|
||||
<channel lang="en" xmltv_id="WRNNDT3.us" site_id="canal-de-la-fe-wrnndt3-new-york-ny/11091">Canal de La Fe (WRNN-DT3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WRNNDT4.us" site_id="qvc2-wrnntv4-new-york-ny/11092">QVC2 (WRNN-TV4) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WTBYDT1.us" site_id="tbn-wtby-new-york-ny/2575">TBN (WTBY) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WTBYDT2.us" site_id="smile-wtbytv2-new-york-ny/11093">Smile (WTBY-TV2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WTBYDT3.us" site_id="enlace-wtbytv3-new-york-ny/11094">Enlace (WTBY-TV3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WTBYDT4.us" site_id="positiv-wtbytv4-new-york-ny/11095">PosiTiV (WTBY-TV4) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WTNHDT1.us" site_id="abc-wtnh-sd-new-haven-ct/17476">ABC (WTNH) SD New Haven, CT</channel>
|
||||
<channel lang="en" xmltv_id="WTNHDT2.us" site_id="rewind-tv-us-wtnh2-new-haven-ct/10741">Rewind TV US (WTNH2) New Haven, CT</channel>
|
||||
<channel lang="en" xmltv_id="WWORDT1.us" site_id="mnt-wwor-new-york-ny/1612">MNT (WWOR) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WWORDT2.us" site_id="circle-wwortv2-new-york-ny/4793">Circle (WWOR-TV2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WWORDT3.us" site_id="buzzr-tv-wwortv3-new-york-ny/10750">Buzzr TV (WWOR-TV3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WWORDT4.us" site_id="hi-wwordt4-new-york-ny/11050">H&I (WWOR-DT4) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WXNYLD1.us" site_id="cgtn-wxnyld-new-york-ny/11078">CGTN (WXNY-LD) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WXNYLD2.us" site_id="cctv4-wxnyld2-new-york-ny/16443">CCTV-4 (WXNY-LD2) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WXNYLD3.us" site_id="cgtn-spanish-wxnyld3-new-york-ny/16444">CGTN Spanish (WXNY-LD3) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WXNYLD4.us" site_id="retro-tv-wxnyld4-new-york-ny/16446">Retro TV (WXNY-LD4) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WXNYLD5.us" site_id="retro-tv-wxnyld5-new-york-ny/17346">Retro TV (WXNY-LD5) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="WXTVDT1.us" site_id="uni-wxtv-teaneck-nj/1771">UNI (WXTV) Teaneck, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WXTVDT2.us" site_id="bounce-wxtvdt2-paterson-nj/16452">Bounce (WXTV-DT2) Paterson, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WXTVDT3.us" site_id="twist-wxtvdt3-paterson-nj/16450">Twist (WXTV-DT3) Paterson, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WXTVDT4.us" site_id="grit-tv-wxtvdt4-paterson-nj/16451">Grit TV (WXTV-DT4) Paterson, NJ</channel>
|
||||
<channel lang="en" xmltv_id="WYXNLD1.us" site_id="cgtn-wyxnld-new-york-ny/29736">CGTN (WYXN-LD) New York, NY</channel>
|
||||
<channel lang="en" xmltv_id="YTATV.us" site_id="youtoo-america-network/5463">Youtoo America - Network</channel>
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="azteca-wmbc-newton-nj/11536">Azteca (WMBC) Newton, NJ</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="daystar-wpxuld-amityville-ny/11066">Daystar (WPXU-LD) Amityville, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="gettv-wftydt3-los-angeles-ca/13521">GetTV (WFTY-DT3) Los Angeles, CA</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="grit-tv-wnwtld3-new-york-ny/16463">Grit TV (WNWT-LD3) New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="guide-us-tv-wkobld4-new-york-ny/11086">Guide Us TV (WKOB-LD4) New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="heartland-wnwtld6-new-york-ny/37095">Heartland (WNWT-LD6) New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="ion-mystery-wnwtld4-new-york-ny/16464">ION Mystery (WNWT-LD4) New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="laff-wnwtld2-new-york-ny/16462">Laff (WNWT-LD2) New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="metv-wjlp-new-jerseynew-york/5138">MeTV (WJLP) New Jersey/New York</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="retro-tv-wnwtld5-new-york-ny/37094">Retro TV (WNWT-LD5) New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="sab-tv-wdvbcd4-edison-nj/11070">SAB TV (WDVB-CD4) Edison, NJ</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="shop-lc-wpxold2-east-orange-nj/34186">Shop LC (WPXO-LD2) East Orange, NJ</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="shophq-wmbctv4-newton-nj/34591">SHOPHQ (WMBC-TV4) Newton, NJ</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="shophq-wrnn-kingston-ny/4689">ShopHQ (WRNN) Kingston, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="story-wnwtld-new-york-ny/11046">Story (WNWT-LD) New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="story-wnwtld7-new-york-ny/37096">Story (WNWT-LD7) New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="swagat-wdvbcd3-edison-nj/11069">Swagat (WDVB-CD3) Edison, NJ</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="tcv-39-wnynld2-new-york-ny/16448">TCV 39 (WNYN-LD2) New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="unimas-wfut-new-york-ny/1776">UniMás (WFUT) New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="wlny-tv1055-riverhead-ny/9574">WLNY TV10/55, Riverhead, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="wmbcnewton-nj/2561">WMBC-Newton, NJ</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="wnyndt4-new-york-ny/17852">WNYN-DT4 New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="wnyndt5-new-york-ny/17853">WNYN-DT5 New York, NY</channel> -->
|
||||
<!-- <channel lang="en" xmltv_id="" site_id="wpix-new-york-superstation/63">WPIX New York (SUPERSTATION)</channel> -->
|
||||
</channels>
|
||||
</site>
|
Loading…
Add table
Add a link
Reference in a new issue