diff --git a/.github/workflows/auto-update.yml b/.github/workflows/auto-update.yml index 70a50da8..c8f254cc 100644 --- a/.github/workflows/auto-update.yml +++ b/.github/workflows/auto-update.yml @@ -4,6 +4,21 @@ on: schedule: - cron: '0 0 * * *' jobs: + programtv_onet_pl: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v2.3.1 + - name: Install Dependencies + run: npm install + - name: Run EPG Grabber + run: npx epg-grabber --config=sites/programtv.onet.pl.config.js + - name: Deploy to GitHub Pages + uses: JamesIves/github-pages-deploy-action@4.1.0 + with: + branch: gh-pages + folder: .gh-pages + clean: false digiturk_com_tr: runs-on: ubuntu-latest steps: diff --git a/README.md b/README.md index c3ab1a32..25d4a45b 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,7 @@ To load a program guide, all you need to do is copy the link to one of the guide programme-tv.netFrench266https://iptv-org.github.io/epg/guides/programme-tv.net.guide.xml guidatv.sky.itItalian178https://iptv-org.github.io/epg/guides/guidatv.sky.it.guide.xml mediaset.itItalian16https://iptv-org.github.io/epg/guides/mediaset.it.guide.xml + programtv.onet.plPolish581https://iptv-org.github.io/epg/guides/programtv.onet.pl.guide.xml tv.yandex.ruRussian378https://iptv-org.github.io/epg/guides/tv.yandex.ru.guide.xml digiturk.com.trTurkish106https://iptv-org.github.io/epg/guides/digiturk.com.tr.guide.xml diff --git a/sites/programtv.onet.pl.channels.xml b/sites/programtv.onet.pl.channels.xml new file mode 100755 index 00000000..ac4ef28a --- /dev/null +++ b/sites/programtv.onet.pl.channels.xml @@ -0,0 +1,583 @@ + + + + 13th Street Deutschland + Telewizja 13 + 13 Ulica + 13 Ulica HD + 2x2 + 2x2 HD + 360 Tune Box + 360 Tune Box HD + 3sat + 4FUN.TV + 4FUN DANCE + 4FUN GOLD + Active Family + Active Family HD + Adult Channel + Adventure + Adventure HD + Ale Kino+ + Ale Kino+ HD + Al Jazeera English + Al Jazeera English HD + Amazing TV + AMC Polska + AMC Polska HD + Animal Planet Polska HD + Animal Planet Europe + ARD-alpha + Arirang TV + ARTE Deutsch + ARTE Deutsch HD + ATV + Automoto la chaîne + AXN Polska + AXN Black Polska + AXN Polska HD + AXN Spin Polska + AXN Spin Polska HD + AXN White Polska + BabyFirst + BabyTV Europe + BBC Brit Polska + BBC Brit Polska HD + CBeebies Polska + BBC Earth Polska + BBC Earth Polska HD + BBC First Polska + BBC Lifestyle Polska + BBC Lifestyle Polska HD + BBC World News Europe + Beate-Uhse.TV + Беларусь 24 + Eén + Белсат TV + Bibel TV + Bloomberg TV UK + Blue Hustler Europe + Bollywood HD + Boomerang Polska + Boomerang Polska HD + BR + Brazzers TV Europe + CANAL+ Polska + CANAL+ 1 + CANAL+ 1 HD + CANAL+ 4K Ultra HD + CANAL+ Dokumenty + CANAL+ Dokumenty HD + CANAL+ Family + CANAL+ Family HD + CANAL+ Film + CANAL+ Film HD + CANAL+ Polska HD + CANAL+ Seriale + CANAL+ Seriale HD + CANAL+ Sport Polska + CANAL+ Sport 2 Polska + CANAL+ Sport 2 Polska HD + CANAL+ Sport 3 Polska + CANAL+ Sport 3 Polska HD + CANAL+ Sport 4 Polska + CANAL+ Sport 4 Polska HD + CANAL+ Sport Polska HD + Cartoon Network Polska + Cartoon Network Polska/TNT Polska + Cartoon Network Polska HD + CBS Europa + CBS Europa HD + CBS Reality Polska + CGTN + Первый канал + Cinemax Central Europe + Cinemax 2 Central Europe + Cinemax 2 Central Europe HD + Cinemax Central Europe HD + Crime+Investigation Polsat + Crime+Investigation Polsat HD + CNBC Europe + CNN International Europe + Comedy Central Polska + Comedy Central Family Polska + Comedy Central Family Polska HD + Comedy Central Polska HD + ČT1 + ČT2 + Czwórka + Czwórka HD + TV Dami Skarżysko + Das Erste + Das Erste HD + Da Vinci Polska + Da Vinci Polska HD + Deutsches Musik Fernsehen + Discovery Channel Polska + Discovery Channel Polska HD + Discovery Channel Deutschland + Discovery Channel Deutschland HD + Discovery Historia + Discovery Life Polska + Discovery Life Polska HD + Discovery Science Polska + Discovery Science Polska HD + Disco Polo Music + Disney Channel Polska + Disney Channel Polska HD + Disney Channel Polska + Disney XD Polska + DMAX Deutschland + DocuBox + DocuBox HD + Domo+ + Domo+ HD + Dorcel TV + Dorcel TV HD + Dorcel XXX + Dorcel XXX HD + DR1 + DR2 + DTX Polska + DTX Polska HD + DW + dlaCiebie.tv + ducktv + ducktv HD + 1LIVE + Eleven Sports 1 Polska + Eleven Sports 1 Polska 4K + Eleven Sports 1 Polska HD + Eleven Sports 2 Polska + Eleven Sports 2 Polska HD + Eleven Sports 3 Polska + Eleven Sports 3 Polska HD + Eleven Sports 4 Polska + Eleven Sports 4 Polska HD + English Club TV + English Club TV HD + Epic Drama + Epic Drama HD + Eroxxx HD + Erox HD + Eska Rock TV + Eska TV + Eska TV Extra + Eska TV HD + E-SPORT + E-SPORT HD + Eurochannel + Eurochannel HD + Euronews English + Euronews Français + Euronews English HD + Eurosport 1 Polska + Eurosport 1 Polska HD + Eurosport 1 Germany + Eurosport 2 Polska + Eurosport 2 Polska HD + EWTN Europe + Extreme Sports Channel Polska + Extreme Sports Channel Polska HD + E! Europe + E! Europe HD + FashionBox HD + Fashion TV Europe + Fashion TV Europe HD + Fast&Fun Box HD + FightBox + FightBox HD + Fightklub + Fightklub HD + FilmBox Action + FilmBox Arthouse Worldwide + FilmBox Arthouse Worldwide HD + FilmBox Extra HD Polska + FilmBox Family + FilmBox Premium Polska HD + Fokus TV + Fokus TV HD + Folx TV + Food Network Polska + Food Network Polska HD + Food Network HD + FOX Polska + FOX Comedy Polska + FOX Comedy Polska HD + FOX Polska HD + France 24 Français + France 24 Français HD + France 24 English + France 24 English HD + France 2 + Franken Fernsehen + FunBox UHD + Gametoon HD + GINX eSports TV + GINX eSports TV HD + GOD TV + Goldstar TV + Golf Channel Polska + Golf Channel Polska HD + GOTV + Hamburg 1 + HBO + HBO2 + HBO2 HD + HBO3 + HBO3 HD + HBO HD + Heimatkanal + HGTV + HGTV HD + HISTORY + HISTORY2 + HISTORY2 HD + HISTORY HD + HISTORY HD (niem.) + HR + HSE 24 + Hustler HD + Hustler TV + ID + ID HD + Insight TV UHD + Inspiration TV + iTVS + JAZZ HD + Junior (niem.) + Kabel Eins + KI.KA + Kino Polska + Kino Polska HD + Kino Polska Muzyka + Kino TV + Kino TV HD + Kuchnia+ + Kuchnia+ HD + Lifetime + Lifetime HD + Liubimoe Kino + LOVE + LOVE HD + Lubelska.tv + MCM Top + MDR + METRO + METRO HD + Mezzo + Mezzo Live HD + MiniMini+ + MiniMini+ HD + Motorvision + Motowizja + Motowizja HD + MTV Dance + MTV Europe + MTV Germany + MTV Hits + MTV Live HD + MTV Music + MTV Polska + MTV Polska HD + MTV Rocks + Music Box + Music Box HD + M 6 + muenchen.tv + myZen.tv HD + National Geographic + National Geographic HD + National Geographic Wild + National Geographic Wild HD + Nat Geo People + Nat Geo People HD + Nautical Channel + Nautical Channel HD + NDR + NHK World TV + NICK + Nickelodeon + Nicktoons + Nicktoons HD + Nick Jr. + Nick Jr. HD + Nitro + Nova + Novela tv + Novela tv HD + Nowa TV + Nowa TV HD + NPO 1 + NPO 2 + NPO 3 + NTL Radomsko + Nuta.TV + Nuta.TV HD + nSport+ + nSport+ HD + n-tv + ONE + ONTV + ONTV HD + ORF 1 + ORF 2 + Outdoor Channel HD + Paramount Channel HD + Phoenix + Planete+ + Planete+ HD + Playboy TV + Polonia 1 + Polo TV + POLSAT + POLSAT 1 + POLSAT 2 + POLSAT 2 HD + POLSAT Café + POLSAT Café HD + POLSAT Doku + POLSAT Doku HD + POLSAT Film + POLSAT Film HD + POLSAT Games + POLSAT Games HD + POLSAT HD + POLSAT JimJam + POLSAT Music + POLSAT Music HD + POLSAT News + POLSAT News 2 + POLSAT News 2 HD + POLSAT News HD + POLSAT Play + POLSAT Play HD + POLSAT Rodzina + POLSAT Rodzina HD + POLSAT Romans + POLSAT Sport + POLSAT Sport Extra + POLSAT Sport Extra HD + POLSAT Sport Fight + POLSAT Sport HD + POLSAT Sport News + POLSAT Sport News HD + POLSAT Sport Premium 1 + POLSAT Sport Premium 2 + POLSAT Sport Premium 3 + POLSAT Sport Premium 4 + POLSAT Sport Premium 5 + POLSAT Sport Premium 6 + POLSAT Viasat Explore HD + POLSAT Viasat History HD + POLSAT Viasat Nature HD + Polskie Radio Program 1 + Polskie Radio Program 2 + Power TV + Power TV HD + Private TV HD + PROART HD + PRO 7 + PULS 2 + PULS 2 HD + QVC + Q Polska HD + RAI 1 + RAI 2 + RBB + Reality Kings TV + Record TV + Redlight + Redlight HD + Red Carpet TV + Red Carpet TV HD + RFM TV + RNF + Romance TV + Romance TV HD + Rossija 24 + RTL + RTLZWEI + RTL 102.5 + RTL HD + RTR Planeta + RTS Deux + RTS Un + RT Documentary + RT Documentary HD + Russia Today + Russia Today HD + rheinmaintv + SAT.1 + SBN + SCI FI + SCI FI HD + Sky Action + Sky Cinema + Sky Cinema + 24 + Sky Comedy + Sky Fussball Bundesliga + Sky Hits + Sky Krimi + Sky News + Sky Nostalgie + Sky Select + Sky Sport 1 + Sky Sport 2 + Sky Sport Austria + Sky Sport HD 1 + Spiegel Geschichte + Sportklub + Sportklub HD + Sport 1 + Spreekanal + SRF 1 + SRF Zwei + STARS.TV + STARS.TV HD + Stingray Classica + Stingray Classica HD + Stingray CMusic + Stingray DJAZZ + Stingray DJAZZ HD + Stingray Festival 4K + Stingray iConcerts + Stingray iConcerts HD + Stingray Juicebox HD + Stingray Loud HD + Stingray Retro + STOPKLATKA + STOPKLATKA HD + Sundance TV + Sundance TV HD + Superstacja + Superstacja HD + Super Polsat + Super Polsat HD + Super RTL + SWR + Syfy + sixx + TBN Polska + TBN Polska HD + Telewizja Pomerania + Tele 5 + Tele 5 HD + Tele 5 (niem.) + TF 1 + TLC + TLC HD + TNT + TNT HD + Top Kids + Top Kids HD + Top Kids Jr HD + TO!TV + TOYA + TRACE Urban + Travelxp 4K + Travelxp HD + Travel Channel + Travel Channel HD + TTV + TTV HD + TV.Berlin + TVE + TVN + TVN24 BiS + TVN24 BiS HD + TVN 24 + TVN 24 HD + TVN 7 + TVN 7 HD + TVN Fabuła + TVN Fabuła HD + TVN HD + TVN Style + TVN Style HD + TVN Turbo + TVN Turbo HD + TVP 1 + TVP 1 HD + TVP 2 + TVP 2 HD + TVP 3 + TVP 3 Białystok + TVP 3 Bydgoszcz + TVP 3 Gdańsk + TVP 3 Gorzów Wielkopolski + TVP 3 Katowice + TVP 3 Kielce + TVP 3 Kraków + TVP 3 Lublin + TVP 3 Łódź + TVP 3 Olsztyn + TVP 3 Opole + TVP 3 Poznań + TVP 3 Rzeszów + TVP 3 Szczecin + TVP 3 Warszawa + TVP 3 Wrocław + TVP ABC + TVP HD + TVP Historia + TVP Info + TVP Info HD + TVP Kultura + TVP Kultura HD + TVP Polonia + TVP Rozrywka + TVP Seriale + TVP Sport + TVP Sport HD + TVR + TVR HD + TVS + TVS HD + TVT + TV 4 + TV 4 HD + TV 5 Monde Europe + TV 6 + TV 6 HD + TV ASTA + TV ASTA HD + TV Okazje + TV Okazje HD + TV Puls + TV Puls HD + TV Regio + TV Regionalna Lubin + TV Relax + TV Republika + TV Republika HD + TV Trwam + Twoja.TV + Twoja Telewizja Morska + teleTOON+ + teleTOON+ HD + tvregionalna.pl + UATV + ULTRA TV 4K + VH1 + VH1 Classic European + Vivid RED HD + Vivid Touch + VOX + VOX Music TV + Water Planet + Water Planet HD + WDR + WELT + WP + WP HD + WTK + wPolsce.pl + wPolsce.pl HD + ZDF + ZDF HD + ZDF Info + ZOOM TV + ZOOM TV HD + + \ No newline at end of file diff --git a/sites/programtv.onet.pl.config.js b/sites/programtv.onet.pl.config.js new file mode 100644 index 00000000..0a1da71d --- /dev/null +++ b/sites/programtv.onet.pl.config.js @@ -0,0 +1,59 @@ +const urlParser = require('url') +const jsdom = require('jsdom') +const { JSDOM } = jsdom +const dayjs = require('dayjs') +const utc = require('dayjs/plugin/utc') +const customParseFormat = require('dayjs/plugin/customParseFormat') + +dayjs.extend(utc) +dayjs.extend(customParseFormat) + +module.exports = { + lang: 'pl', + site: 'programtv.onet.pl', + channels: 'programtv.onet.pl.channels.xml', + output: '.gh-pages/guides/programtv.onet.pl.guide.xml', + url: function ({ date, channel }) { + const day = dayjs().diff(date, 'd') + return `https://programtv.onet.pl/program-tv/${channel.site_id}?dzien=${day}` + }, + logo: function ({ content }) { + const dom = new JSDOM(content) + const img = dom.window.document.querySelector('#channelTV > section > header > span > img') + + return img ? 'https:' + img.src : null + }, + parser: function ({ content, date }) { + const programs = [] + const dom = new JSDOM(content) + const items = dom.window.document.querySelectorAll( + '#channelTV > section > div.emissions > ul > li' + ) + + items.forEach(item => { + const title = (item.querySelector('.titles > a') || { textContent: '' }).textContent + const description = (item.querySelector('.titles > p') || { textContent: '' }).textContent + const category = (item.querySelector('.titles > .type') || { textContent: '' }).textContent + const hour = (item.querySelector('.hours > .hour') || { textContent: '' }).textContent + + const start = dayjs + .utc(hour, 'H:mm') + .set('D', date.get('D')) + .set('M', date.get('M')) + .set('y', date.get('y')) + + if (programs.length && !programs[programs.length - 1].stop) { + programs[programs.length - 1].stop = start + } + + programs.push({ + title, + description, + category, + start + }) + }) + + return programs + } +}