diff --git a/.github/workflows/berrymedia.co.kr.yml b/.github/workflows/berrymedia.co.kr.yml new file mode 100644 index 00000000..c606c01e --- /dev/null +++ b/.github/workflows/berrymedia.co.kr.yml @@ -0,0 +1,17 @@ +name: berrymedia.co.kr +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 }} diff --git a/.github/workflows/ena.skylifetv.co.kr.yml b/.github/workflows/ena.skylifetv.co.kr.yml new file mode 100644 index 00000000..d5fcc618 --- /dev/null +++ b/.github/workflows/ena.skylifetv.co.kr.yml @@ -0,0 +1,17 @@ +name: ena.skylifetv.co.kr +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 }} diff --git a/.github/workflows/mediagenie.co.kr.yml b/.github/workflows/mediagenie.co.kr.yml new file mode 100644 index 00000000..937dbfe0 --- /dev/null +++ b/.github/workflows/mediagenie.co.kr.yml @@ -0,0 +1,17 @@ +name: mediagenie.co.kr +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 }} diff --git a/README.md b/README.md index 71ab5355..db99e76d 100644 --- a/README.md +++ b/README.md @@ -48,8 +48,9 @@ You can also find the link to the guide by the name of the channel via https://i artonline.tv5https://iptv-org.github.io/epg/guides/ar/artonline.tv.xmlartonline.tv + bein.com76https://iptv-org.github.io/epg/guides/ar/bein.com.xmlbein.com beinsports.com25https://iptv-org.github.io/epg/guides/ar/beinsports.com.xmlbeinsports.com - elcinema.com100https://iptv-org.github.io/epg/guides/ar/elcinema.com.xmlelcinema.com + elcinema.com99https://iptv-org.github.io/epg/guides/ar/elcinema.com.xmlelcinema.com i24news.tv1https://iptv-org.github.io/epg/guides/ar/i24news.tv.xmli24news.tv @@ -153,7 +154,10 @@ You can also find the link to the guide by the name of the channel via https://i Site                                        ChannelsEPG                                                                                                                                      Status                                                    + epg.i-cable.com66https://iptv-org.github.io/epg/guides/zh/epg.i-cable.com.xmlepg.i-cable.com + mytvsuper.com46https://iptv-org.github.io/epg/guides/zh/mytvsuper.com.xmlmytvsuper.com nowplayer.now.com113https://iptv-org.github.io/epg/guides/zh/nowplayer.now.com.xmlnowplayer.now.com + programme.tvb.com9https://iptv-org.github.io/epg/guides/zh/programme.tvb.com.xmlprogramme.tvb.com rthk.hk4https://iptv-org.github.io/epg/guides/zh/rthk.hk.xmlrthk.hk tv.cctv.com92https://iptv-org.github.io/epg/guides/zh/tv.cctv.com.xmltv.cctv.com @@ -171,7 +175,7 @@ You can also find the link to the guide by the name of the channel via https://i magentatv.at1https://iptv-org.github.io/epg/guides/hr/magentatv.at.xmlmagentatv.at maxtv.hrvatskitelekom.hr109https://iptv-org.github.io/epg/guides/hr/maxtv.hrvatskitelekom.hr.xmlmaxtv.hrvatskitelekom.hr tv.blue.ch4https://iptv-org.github.io/epg/guides/hr/tv.blue.ch.xmltv.blue.ch - tvprofil.com435https://iptv-org.github.io/epg/guides/hr/tvprofil.com.xmltvprofil.com + tvprofil.com439https://iptv-org.github.io/epg/guides/hr/tvprofil.com.xmltvprofil.com @@ -183,6 +187,7 @@ You can also find the link to the guide by the name of the channel via https://i m.tv.sms.cz334https://iptv-org.github.io/epg/guides/cs/m.tv.sms.cz.xmlm.tv.sms.cz + mujtvprogram.cz144https://iptv-org.github.io/epg/guides/cs/mujtvprogram.cz.xmlmujtvprogram.cz tv.blue.ch1https://iptv-org.github.io/epg/guides/cs/tv.blue.ch.xmltv.blue.ch @@ -215,7 +220,7 @@ You can also find the link to the guide by the name of the channel via https://i tv.post.lu5https://iptv-org.github.io/epg/guides/nl/tv.post.lu.xmltv.post.lu tvgids.nl104https://iptv-org.github.io/epg/guides/nl/tvgids.nl.xmltvgids.nl vtm.be6https://iptv-org.github.io/epg/guides/nl/vtm.be.xmlvtm.be - ziggogo.tv77https://iptv-org.github.io/epg/guides/nl/ziggogo.tv.xmlziggogo.tv + ziggogo.tv101https://iptv-org.github.io/epg/guides/nl/ziggogo.tv.xmlziggogo.tv @@ -226,44 +231,58 @@ You can also find the link to the guide by the name of the channel via https://i Site                                        ChannelsEPG                                                                                                                                      Status                                                    + abc.net.au27https://iptv-org.github.io/epg/guides/en/abc.net.au.xmlabc.net.au allente.se5https://iptv-org.github.io/epg/guides/en/allente.se.xmlallente.se arianaafgtv.com1https://iptv-org.github.io/epg/guides/en/arianaafgtv.com.xmlarianaafgtv.com arianatelevision.com1https://iptv-org.github.io/epg/guides/en/arianatelevision.com.xmlarianatelevision.com + bein.com77https://iptv-org.github.io/epg/guides/en/bein.com.xmlbein.com beinsports.com29https://iptv-org.github.io/epg/guides/en/beinsports.com.xmlbeinsports.com bt.com148https://iptv-org.github.io/epg/guides/en/bt.com.xmlbt.com canalplus.com5https://iptv-org.github.io/epg/guides/en/canalplus.com.xmlcanalplus.com + cgates.lt38https://iptv-org.github.io/epg/guides/en/cgates.lt.xmlcgates.lt clickthecity.com27https://iptv-org.github.io/epg/guides/en/clickthecity.com.xmlclickthecity.com delta.nl19https://iptv-org.github.io/epg/guides/en/delta.nl.xmldelta.nl digiturk.com.tr11https://iptv-org.github.io/epg/guides/en/digiturk.com.tr.xmldigiturk.com.tr - directv.com324https://iptv-org.github.io/epg/guides/en/directv.com.xmldirectv.com + directv.com262https://iptv-org.github.io/epg/guides/en/directv.com.xmldirectv.com dishtv.in348https://iptv-org.github.io/epg/guides/en/dishtv.in.xmldishtv.in dsmart.com.tr7https://iptv-org.github.io/epg/guides/en/dsmart.com.tr.xmldsmart.com.tr dstv.com194https://iptv-org.github.io/epg/guides/en/dstv.com.xmldstv.com - elcinema.com99https://iptv-org.github.io/epg/guides/en/elcinema.com.xmlelcinema.com - i.mjh.nz657https://iptv-org.github.io/epg/guides/en/i.mjh.nz.xmli.mjh.nz + elcinema.com98https://iptv-org.github.io/epg/guides/en/elcinema.com.xmlelcinema.com + epg.i-cable.com94https://iptv-org.github.io/epg/guides/en/epg.i-cable.com.xmlepg.i-cable.com + flixed.io314https://iptv-org.github.io/epg/guides/en/flixed.io.xmlflixed.io + foxsports.com.au7https://iptv-org.github.io/epg/guides/en/foxsports.com.au.xmlfoxsports.com.au + getafteritmedia.com5https://iptv-org.github.io/epg/guides/en/getafteritmedia.com.xmlgetafteritmedia.com + i.mjh.nz648https://iptv-org.github.io/epg/guides/en/i.mjh.nz.xmli.mjh.nz i24news.tv1https://iptv-org.github.io/epg/guides/en/i24news.tv.xmli24news.tv + ionplustv.com1https://iptv-org.github.io/epg/guides/en/ionplustv.com.xmlionplustv.com m.tv.sms.cz102https://iptv-org.github.io/epg/guides/en/m.tv.sms.cz.xmlm.tv.sms.cz magentatv.at16https://iptv-org.github.io/epg/guides/en/magentatv.at.xmlmagentatv.at - magticom.ge10https://iptv-org.github.io/epg/guides/en/magticom.ge.xmlmagticom.ge + magticom.ge9https://iptv-org.github.io/epg/guides/en/magticom.ge.xmlmagticom.ge maxtv.hrvatskitelekom.hr24https://iptv-org.github.io/epg/guides/en/maxtv.hrvatskitelekom.hr.xmlmaxtv.hrvatskitelekom.hr melita.com82https://iptv-org.github.io/epg/guides/en/melita.com.xmlmelita.com meo.pt9https://iptv-org.github.io/epg/guides/en/meo.pt.xmlmeo.pt - mncvision.id95https://iptv-org.github.io/epg/guides/en/mncvision.id.xmlmncvision.id + mewatch.sg16https://iptv-org.github.io/epg/guides/en/mewatch.sg.xmlmewatch.sg + mncvision.id94https://iptv-org.github.io/epg/guides/en/mncvision.id.xmlmncvision.id mtel.ba32https://iptv-org.github.io/epg/guides/en/mtel.ba.xmlmtel.ba + mujtvprogram.cz45https://iptv-org.github.io/epg/guides/en/mujtvprogram.cz.xmlmujtvprogram.cz musor.tv18https://iptv-org.github.io/epg/guides/en/musor.tv.xmlmusor.tv + myafn.dodmedia.osd.mil8https://iptv-org.github.io/epg/guides/en/myafn.dodmedia.osd.mil.xmlmyafn.dodmedia.osd.mil + mysky.com.ph45https://iptv-org.github.io/epg/guides/en/mysky.com.ph.xmlmysky.com.ph + mytvsuper.com56https://iptv-org.github.io/epg/guides/en/mytvsuper.com.xmlmytvsuper.com nowplayer.now.com125https://iptv-org.github.io/epg/guides/en/nowplayer.now.com.xmlnowplayer.now.com ontvtonight.com174https://iptv-org.github.io/epg/guides/en/ontvtonight.com.xmlontvtonight.com pbsguam.org1https://iptv-org.github.io/epg/guides/en/pbsguam.org.xmlpbsguam.org + plex.tv314https://iptv-org.github.io/epg/guides/en/plex.tv.xmlplex.tv programtv.onet.pl42https://iptv-org.github.io/epg/guides/en/programtv.onet.pl.xmlprogramtv.onet.pl rev.bs177https://iptv-org.github.io/epg/guides/en/rev.bs.xmlrev.bs rthk.hk4https://iptv-org.github.io/epg/guides/en/rthk.hk.xmlrthk.hk sky.co.nz93https://iptv-org.github.io/epg/guides/en/sky.co.nz.xmlsky.co.nz - sky.com307https://iptv-org.github.io/epg/guides/en/sky.com.xmlsky.com + sky.com304https://iptv-org.github.io/epg/guides/en/sky.com.xmlsky.com sportsnet.ca8https://iptv-org.github.io/epg/guides/en/sportsnet.ca.xmlsportsnet.ca starhubtvplus.com118https://iptv-org.github.io/epg/guides/en/starhubtvplus.com.xmlstarhubtvplus.com - startimestv.com95https://iptv-org.github.io/epg/guides/en/startimestv.com.xmlstartimestv.com + startimestv.com94https://iptv-org.github.io/epg/guides/en/startimestv.com.xmlstartimestv.com superguidatv.it3https://iptv-org.github.io/epg/guides/en/superguidatv.it.xmlsuperguidatv.it - tapdmv.com12https://iptv-org.github.io/epg/guides/en/tapdmv.com.xmltapdmv.com + tapdmv.com15https://iptv-org.github.io/epg/guides/en/tapdmv.com.xmltapdmv.com telecablesat.fr5https://iptv-org.github.io/epg/guides/en/telecablesat.fr.xmltelecablesat.fr telenet.tv20https://iptv-org.github.io/epg/guides/en/telenet.tv.xmltelenet.tv teliatv.ee79https://iptv-org.github.io/epg/guides/en/teliatv.ee.xmlteliatv.ee @@ -277,8 +296,8 @@ You can also find the link to the guide by the name of the channel via https://i tvguide.com83https://iptv-org.github.io/epg/guides/en/tvguide.com.xmltvguide.com tvhebdo.com1https://iptv-org.github.io/epg/guides/en/tvhebdo.com.xmltvhebdo.com tvmusor.hu4https://iptv-org.github.io/epg/guides/en/tvmusor.hu.xmltvmusor.hu - tvpassport.com462https://iptv-org.github.io/epg/guides/en/tvpassport.com.xmltvpassport.com - tvplus.com.tr9https://iptv-org.github.io/epg/guides/en/tvplus.com.tr.xmltvplus.com.tr + tvpassport.com509https://iptv-org.github.io/epg/guides/en/tvpassport.com.xmltvpassport.com + tvplus.com.tr10https://iptv-org.github.io/epg/guides/en/tvplus.com.tr.xmltvplus.com.tr tvprofil.com4https://iptv-org.github.io/epg/guides/en/tvprofil.com.xmltvprofil.com unifi.com.my45https://iptv-org.github.io/epg/guides/en/unifi.com.my.xmlunifi.com.my virginmedia.com188https://iptv-org.github.io/epg/guides/en/virginmedia.com.xmlvirginmedia.com @@ -286,7 +305,7 @@ You can also find the link to the guide by the name of the channel via https://i wavve.com2https://iptv-org.github.io/epg/guides/en/wavve.com.xmlwavve.com worldfishingnetwork.com1https://iptv-org.github.io/epg/guides/en/worldfishingnetwork.com.xmlworldfishingnetwork.com xumo.tv108https://iptv-org.github.io/epg/guides/en/xumo.tv.xmlxumo.tv - ziggogo.tv15https://iptv-org.github.io/epg/guides/en/ziggogo.tv.xmlziggogo.tv + ziggogo.tv23https://iptv-org.github.io/epg/guides/en/ziggogo.tv.xmlziggogo.tv znbc.co.zm4https://iptv-org.github.io/epg/guides/en/znbc.co.zm.xmlznbc.co.zm @@ -337,29 +356,32 @@ You can also find the link to the guide by the name of the channel via https://i beinsports.com10https://iptv-org.github.io/epg/guides/fr/beinsports.com.xmlbeinsports.com - canalplus-afrique.com67https://iptv-org.github.io/epg/guides/fr/canalplus-afrique.com.xmlcanalplus-afrique.com - canalplus-caraibes.com12https://iptv-org.github.io/epg/guides/fr/canalplus-caraibes.com.xmlcanalplus-caraibes.com - canalplus-haiti.com16https://iptv-org.github.io/epg/guides/fr/canalplus-haiti.com.xmlcanalplus-haiti.com - canalplus-reunion.com13https://iptv-org.github.io/epg/guides/fr/canalplus-reunion.com.xmlcanalplus-reunion.com + canalplus-afrique.com103https://iptv-org.github.io/epg/guides/fr/canalplus-afrique.com.xmlcanalplus-afrique.com + canalplus-caraibes.com24https://iptv-org.github.io/epg/guides/fr/canalplus-caraibes.com.xmlcanalplus-caraibes.com + canalplus-haiti.com10https://iptv-org.github.io/epg/guides/fr/canalplus-haiti.com.xmlcanalplus-haiti.com + canalplus-reunion.com28https://iptv-org.github.io/epg/guides/fr/canalplus-reunion.com.xmlcanalplus-reunion.com canalplus.com179https://iptv-org.github.io/epg/guides/fr/canalplus.com.xmlcanalplus.com chaines-tv.orange.fr165https://iptv-org.github.io/epg/guides/fr/chaines-tv.orange.fr.xmlchaines-tv.orange.fr delta.nl3https://iptv-org.github.io/epg/guides/fr/delta.nl.xmldelta.nl digiturk.com.tr1https://iptv-org.github.io/epg/guides/fr/digiturk.com.tr.xmldigiturk.com.tr dstv.com1https://iptv-org.github.io/epg/guides/fr/dstv.com.xmldstv.com + epg.i-cable.com1https://iptv-org.github.io/epg/guides/fr/epg.i-cable.com.xmlepg.i-cable.com i24news.tv1https://iptv-org.github.io/epg/guides/fr/i24news.tv.xmli24news.tv m.tv.sms.cz5https://iptv-org.github.io/epg/guides/fr/m.tv.sms.cz.xmlm.tv.sms.cz magentatv.at2https://iptv-org.github.io/epg/guides/fr/magentatv.at.xmlmagentatv.at maxtv.hrvatskitelekom.hr2https://iptv-org.github.io/epg/guides/fr/maxtv.hrvatskitelekom.hr.xmlmaxtv.hrvatskitelekom.hr melita.com4https://iptv-org.github.io/epg/guides/fr/melita.com.xmlmelita.com + mon-programme-tv.be100https://iptv-org.github.io/epg/guides/fr/mon-programme-tv.be.xmlmon-programme-tv.be + mujtvprogram.cz4https://iptv-org.github.io/epg/guides/fr/mujtvprogram.cz.xmlmujtvprogram.cz programme-tv.net204https://iptv-org.github.io/epg/guides/fr/programme-tv.net.xmlprogramme-tv.net programme-tv.vini.pf2https://iptv-org.github.io/epg/guides/fr/programme-tv.vini.pf.xmlprogramme-tv.vini.pf programtv.onet.pl3https://iptv-org.github.io/epg/guides/fr/programtv.onet.pl.xmlprogramtv.onet.pl startimestv.com1https://iptv-org.github.io/epg/guides/fr/startimestv.com.xmlstartimestv.com superguidatv.it1https://iptv-org.github.io/epg/guides/fr/superguidatv.it.xmlsuperguidatv.it - telecablesat.fr237https://iptv-org.github.io/epg/guides/fr/telecablesat.fr.xmltelecablesat.fr + telecablesat.fr238https://iptv-org.github.io/epg/guides/fr/telecablesat.fr.xmltelecablesat.fr telenet.tv31https://iptv-org.github.io/epg/guides/fr/telenet.tv.xmltelenet.tv tv.blue.ch139https://iptv-org.github.io/epg/guides/fr/tv.blue.ch.xmltv.blue.ch - tv.post.lu67https://iptv-org.github.io/epg/guides/fr/tv.post.lu.xmltv.post.lu + tv.post.lu68https://iptv-org.github.io/epg/guides/fr/tv.post.lu.xmltv.post.lu tv24.se1https://iptv-org.github.io/epg/guides/fr/tv24.se.xmltv24.se tvhebdo.com221https://iptv-org.github.io/epg/guides/fr/tvhebdo.com.xmltvhebdo.com tvplus.com.tr2https://iptv-org.github.io/epg/guides/fr/tvplus.com.tr.xmltvplus.com.tr @@ -385,7 +407,7 @@ You can also find the link to the guide by the name of the channel via https://i Site                                        ChannelsEPG                                                                                                                                      Status                                                    - magticom.ge35https://iptv-org.github.io/epg/guides/ka/magticom.ge.xmlmagticom.ge + magticom.ge36https://iptv-org.github.io/epg/guides/ka/magticom.ge.xmlmagticom.ge @@ -397,18 +419,20 @@ You can also find the link to the guide by the name of the channel via https://i delta.nl1https://iptv-org.github.io/epg/guides/de/delta.nl.xmldelta.nl + epg.i-cable.com1https://iptv-org.github.io/epg/guides/de/epg.i-cable.com.xmlepg.i-cable.com hd-plus.de115https://iptv-org.github.io/epg/guides/de/hd-plus.de.xmlhd-plus.de horizon.tv172https://iptv-org.github.io/epg/guides/de/horizon.tv.xmlhorizon.tv m.tv.sms.cz14https://iptv-org.github.io/epg/guides/de/m.tv.sms.cz.xmlm.tv.sms.cz magentatv.at175https://iptv-org.github.io/epg/guides/de/magentatv.at.xmlmagentatv.at maxtv.hrvatskitelekom.hr5https://iptv-org.github.io/epg/guides/de/maxtv.hrvatskitelekom.hr.xmlmaxtv.hrvatskitelekom.hr melita.com2https://iptv-org.github.io/epg/guides/de/melita.com.xmlmelita.com + mujtvprogram.cz3https://iptv-org.github.io/epg/guides/de/mujtvprogram.cz.xmlmujtvprogram.cz nowplayer.now.com1https://iptv-org.github.io/epg/guides/de/nowplayer.now.com.xmlnowplayer.now.com programme-tv.net1https://iptv-org.github.io/epg/guides/de/programme-tv.net.xmlprogramme-tv.net programtv.onet.pl34https://iptv-org.github.io/epg/guides/de/programtv.onet.pl.xmlprogramtv.onet.pl - sky.de63https://iptv-org.github.io/epg/guides/de/sky.de.xmlsky.de + sky.de62https://iptv-org.github.io/epg/guides/de/sky.de.xmlsky.de telecablesat.fr2https://iptv-org.github.io/epg/guides/de/telecablesat.fr.xmltelecablesat.fr - tv.blue.ch176https://iptv-org.github.io/epg/guides/de/tv.blue.ch.xmltv.blue.ch + tv.blue.ch174https://iptv-org.github.io/epg/guides/de/tv.blue.ch.xmltv.blue.ch tv.post.lu96https://iptv-org.github.io/epg/guides/de/tv.post.lu.xmltv.post.lu tv24.se1https://iptv-org.github.io/epg/guides/de/tv24.se.xmltv24.se tvheute.at50https://iptv-org.github.io/epg/guides/de/tvheute.at.xmltvheute.at @@ -423,7 +447,9 @@ You can also find the link to the guide by the name of the channel via https://i Site                                        ChannelsEPG                                                                                                                                      Status                                                    - cosmote.gr76https://iptv-org.github.io/epg/guides/el/cosmote.gr.xmlcosmote.gr + cosmote.gr81https://iptv-org.github.io/epg/guides/el/cosmote.gr.xmlcosmote.gr + novacyprus.com26https://iptv-org.github.io/epg/guides/el/novacyprus.com.xmlnovacyprus.com + novasports.gr16https://iptv-org.github.io/epg/guides/el/novasports.gr.xmlnovasports.gr tv.blue.ch2https://iptv-org.github.io/epg/guides/el/tv.blue.ch.xmltv.blue.ch @@ -447,6 +473,7 @@ You can also find the link to the guide by the name of the channel via https://i Site                                        ChannelsEPG                                                                                                                                      Status                                                    + epg.i-cable.com1https://iptv-org.github.io/epg/guides/hi/epg.i-cable.com.xmlepg.i-cable.com sky.com24https://iptv-org.github.io/epg/guides/hi/sky.com.xmlsky.com tv.blue.ch2https://iptv-org.github.io/epg/guides/hi/tv.blue.ch.xmltv.blue.ch unifi.com.my3https://iptv-org.github.io/epg/guides/hi/unifi.com.my.xmlunifi.com.my @@ -463,9 +490,10 @@ You can also find the link to the guide by the name of the channel via https://i m.tv.sms.cz3https://iptv-org.github.io/epg/guides/hu/m.tv.sms.cz.xmlm.tv.sms.cz magentatv.at1https://iptv-org.github.io/epg/guides/hu/magentatv.at.xmlmagentatv.at mediaklikk.hu7https://iptv-org.github.io/epg/guides/hu/mediaklikk.hu.xmlmediaklikk.hu + mujtvprogram.cz3https://iptv-org.github.io/epg/guides/hu/mujtvprogram.cz.xmlmujtvprogram.cz musor.tv131https://iptv-org.github.io/epg/guides/hu/musor.tv.xmlmusor.tv tv.blue.ch5https://iptv-org.github.io/epg/guides/hu/tv.blue.ch.xmltv.blue.ch - tv.yettel.hu67https://iptv-org.github.io/epg/guides/hu/tv.yettel.hu.xmltv.yettel.hu + tv.yettel.hu68https://iptv-org.github.io/epg/guides/hu/tv.yettel.hu.xmltv.yettel.hu tvmusor.hu77https://iptv-org.github.io/epg/guides/hu/tvmusor.hu.xmltvmusor.hu @@ -488,7 +516,8 @@ You can also find the link to the guide by the name of the channel via https://i Site                                        ChannelsEPG                                                                                                                                      Status                                                    - mncvision.id95https://iptv-org.github.io/epg/guides/id/mncvision.id.xmlmncvision.id + indihometv.com115https://iptv-org.github.io/epg/guides/id/indihometv.com.xmlindihometv.com + mncvision.id94https://iptv-org.github.io/epg/guides/id/mncvision.id.xmlmncvision.id transvision.co.id63https://iptv-org.github.io/epg/guides/id/transvision.co.id.xmltransvision.co.id vidio.com52https://iptv-org.github.io/epg/guides/id/vidio.com.xmlvidio.com @@ -529,9 +558,10 @@ You can also find the link to the guide by the name of the channel via https://i maxtv.hrvatskitelekom.hr4https://iptv-org.github.io/epg/guides/it/maxtv.hrvatskitelekom.hr.xmlmaxtv.hrvatskitelekom.hr mediaset.it13https://iptv-org.github.io/epg/guides/it/mediaset.it.xmlmediaset.it melita.com22https://iptv-org.github.io/epg/guides/it/melita.com.xmlmelita.com + raiplay.it12https://iptv-org.github.io/epg/guides/it/raiplay.it.xmlraiplay.it superguidatv.it138https://iptv-org.github.io/epg/guides/it/superguidatv.it.xmlsuperguidatv.it telecablesat.fr2https://iptv-org.github.io/epg/guides/it/telecablesat.fr.xmltelecablesat.fr - tivu.tv69https://iptv-org.github.io/epg/guides/it/tivu.tv.xmltivu.tv + tivu.tv68https://iptv-org.github.io/epg/guides/it/tivu.tv.xmltivu.tv tv.blue.ch74https://iptv-org.github.io/epg/guides/it/tv.blue.ch.xmltv.blue.ch tv.post.lu6https://iptv-org.github.io/epg/guides/it/tv.post.lu.xmltv.post.lu tv24.se3https://iptv-org.github.io/epg/guides/it/tv24.se.xmltv24.se @@ -567,8 +597,9 @@ You can also find the link to the guide by the name of the channel via https://i Site                                        ChannelsEPG                                                                                                                                      Status                                                    - tving.com21https://iptv-org.github.io/epg/guides/ko/tving.com.xmltving.com - wavve.com58https://iptv-org.github.io/epg/guides/ko/wavve.com.xmlwavve.com + berrymedia.co.kr6https://iptv-org.github.io/epg/guides/ko/berrymedia.co.kr.xmlberrymedia.co.kr + tving.com23https://iptv-org.github.io/epg/guides/ko/tving.com.xmltving.com + wavve.com74https://iptv-org.github.io/epg/guides/ko/wavve.com.xmlwavve.com @@ -594,6 +625,17 @@ You can also find the link to the guide by the name of the channel via https://i +### Lithuanian + + + + + + + + +
Site                                        ChannelsEPG                                                                                                                                      Status                                                   
cgates.lt41https://iptv-org.github.io/epg/guides/lt/cgates.lt.xmlcgates.lt
+ ### Luxembourgish @@ -698,6 +740,7 @@ You can also find the link to the guide by the name of the channel via https://i + @@ -711,7 +754,7 @@ You can also find the link to the guide by the name of the channel via https://i - +
dstv.com1https://iptv-org.github.io/epg/guides/pt/dstv.com.xmldstv.com
meo.pt175https://iptv-org.github.io/epg/guides/pt/meo.pt.xmlmeo.pt
mi.tv247https://iptv-org.github.io/epg/guides/pt/mi.tv.xmlmi.tv
plex.tv1https://iptv-org.github.io/epg/guides/pt/plex.tv.xmlplex.tv
rtp.pt10https://iptv-org.github.io/epg/guides/pt/rtp.pt.xmlrtp.pt
tv.blue.ch7https://iptv-org.github.io/epg/guides/pt/tv.blue.ch.xmltv.blue.ch
tv.post.lu11https://iptv-org.github.io/epg/guides/pt/tv.post.lu.xmltv.post.lu
Site                                        ChannelsEPG                                                                                                                                      Status                                                   
programetv.ro223https://iptv-org.github.io/epg/guides/ro/programetv.ro.xmlprogrametv.ro
programetv.ro222https://iptv-org.github.io/epg/guides/ro/programetv.ro.xmlprogrametv.ro
tv.blue.ch4https://iptv-org.github.io/epg/guides/ro/tv.blue.ch.xmltv.blue.ch
@@ -730,7 +773,7 @@ You can also find the link to the guide by the name of the channel via https://i tv.blue.ch5https://iptv-org.github.io/epg/guides/ru/tv.blue.ch.xmltv.blue.ch tv.mail.ru18https://iptv-org.github.io/epg/guides/ru/tv.mail.ru.xmltv.mail.ru tv.post.lu2https://iptv-org.github.io/epg/guides/ru/tv.post.lu.xmltv.post.lu - tv.yandex.ru203https://iptv-org.github.io/epg/guides/ru/tv.yandex.ru.xmltv.yandex.ru + tv.yandex.ru248https://iptv-org.github.io/epg/guides/ru/tv.yandex.ru.xmltv.yandex.ru @@ -757,6 +800,7 @@ You can also find the link to the guide by the name of the channel via https://i horizon.tv125https://iptv-org.github.io/epg/guides/sk/horizon.tv.xmlhorizon.tv m.tv.sms.cz7https://iptv-org.github.io/epg/guides/sk/m.tv.sms.cz.xmlm.tv.sms.cz + mujtvprogram.cz23https://iptv-org.github.io/epg/guides/sk/mujtvprogram.cz.xmlmujtvprogram.cz @@ -767,7 +811,7 @@ You can also find the link to the guide by the name of the channel via https://i Site                                        ChannelsEPG                                                                                                                                      Status                                                    - tv2go.t-2.net257https://iptv-org.github.io/epg/guides/sl/tv2go.t-2.net.xmltv2go.t-2.net + tv2go.t-2.net258https://iptv-org.github.io/epg/guides/sl/tv2go.t-2.net.xmltv2go.t-2.net @@ -779,22 +823,29 @@ You can also find the link to the guide by the name of the channel via https://i beinsports.com4https://iptv-org.github.io/epg/guides/es/beinsports.com.xmlbeinsports.com + cablego.com.pe23https://iptv-org.github.io/epg/guides/es/cablego.com.pe.xmlcablego.com.pe + compulms.com4https://iptv-org.github.io/epg/guides/es/compulms.com.xmlcompulms.com comteco.com.bo67https://iptv-org.github.io/epg/guides/es/comteco.com.bo.xmlcomteco.com.bo - directv.com39https://iptv-org.github.io/epg/guides/es/directv.com.xmldirectv.com - gatotv.com287https://iptv-org.github.io/epg/guides/es/gatotv.com.xmlgatotv.com + directv.com35https://iptv-org.github.io/epg/guides/es/directv.com.xmldirectv.com + directv.com.ar170https://iptv-org.github.io/epg/guides/es/directv.com.ar.xmldirectv.com.ar + directv.com.uy138https://iptv-org.github.io/epg/guides/es/directv.com.uy.xmldirectv.com.uy + flixed.io28https://iptv-org.github.io/epg/guides/es/flixed.io.xmlflixed.io + gatotv.com288https://iptv-org.github.io/epg/guides/es/gatotv.com.xmlgatotv.com i.mjh.nz2https://iptv-org.github.io/epg/guides/es/i.mjh.nz.xmli.mjh.nz m.tv.sms.cz3https://iptv-org.github.io/epg/guides/es/m.tv.sms.cz.xmlm.tv.sms.cz melita.com1https://iptv-org.github.io/epg/guides/es/melita.com.xmlmelita.com mi.tv340https://iptv-org.github.io/epg/guides/es/mi.tv.xmlmi.tv - movistarplus.es175https://iptv-org.github.io/epg/guides/es/movistarplus.es.xmlmovistarplus.es + movistarplus.es176https://iptv-org.github.io/epg/guides/es/movistarplus.es.xmlmovistarplus.es ontvtonight.com5https://iptv-org.github.io/epg/guides/es/ontvtonight.com.xmlontvtonight.com + plex.tv25https://iptv-org.github.io/epg/guides/es/plex.tv.xmlplex.tv programacion-tv.elpais.com95https://iptv-org.github.io/epg/guides/es/programacion-tv.elpais.com.xmlprogramacion-tv.elpais.com + reportv.com.ar95https://iptv-org.github.io/epg/guides/es/reportv.com.ar.xmlreportv.com.ar siba.com.co38https://iptv-org.github.io/epg/guides/es/siba.com.co.xmlsiba.com.co tv.blue.ch13https://iptv-org.github.io/epg/guides/es/tv.blue.ch.xmltv.blue.ch tv.movistar.com.pe29https://iptv-org.github.io/epg/guides/es/tv.movistar.com.pe.xmltv.movistar.com.pe tv.post.lu2https://iptv-org.github.io/epg/guides/es/tv.post.lu.xmltv.post.lu tvcubana.icrt.cu10https://iptv-org.github.io/epg/guides/es/tvcubana.icrt.cu.xmltvcubana.icrt.cu - tvpassport.com22https://iptv-org.github.io/epg/guides/es/tvpassport.com.xmltvpassport.com + tvpassport.com18https://iptv-org.github.io/epg/guides/es/tvpassport.com.xmltvpassport.com xumo.tv2https://iptv-org.github.io/epg/guides/es/xumo.tv.xmlxumo.tv @@ -806,9 +857,9 @@ You can also find the link to the guide by the name of the channel via https://i Site                                        ChannelsEPG                                                                                                                                      Status                                                    - allente.se94https://iptv-org.github.io/epg/guides/sv/allente.se.xmlallente.se - tv.nu150https://iptv-org.github.io/epg/guides/sv/tv.nu.xmltv.nu - tv24.se127https://iptv-org.github.io/epg/guides/sv/tv24.se.xmltv24.se + allente.se96https://iptv-org.github.io/epg/guides/sv/allente.se.xmlallente.se + tv.nu155https://iptv-org.github.io/epg/guides/sv/tv.nu.xmltv.nu + tv24.se130https://iptv-org.github.io/epg/guides/sv/tv24.se.xmltv24.se diff --git a/sites/abc.net.au/abc.net.au.config.js b/sites/abc.net.au/abc.net.au.config.js index 130b6b05..b3212833 100644 --- a/sites/abc.net.au/abc.net.au.config.js +++ b/sites/abc.net.au/abc.net.au.config.js @@ -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 diff --git a/sites/allente.se/allente.se_dk.channels.xml b/sites/allente.se/allente.se_dk.channels.xml index 76c22919..d0022b5b 100644 --- a/sites/allente.se/allente.se_dk.channels.xml +++ b/sites/allente.se/allente.se_dk.channels.xml @@ -3,6 +3,7 @@ 6'eren Boomerang Nordic + Canal 9 Cartoon Network Nordic C More First C More Hits @@ -59,7 +60,6 @@ Xee Aljazeera English BBC World News Europe - Canal 9 CNBC Europe CNN International Europe diff --git a/sites/berrymedia.co.kr/__data__/content.html b/sites/berrymedia.co.kr/__data__/content.html new file mode 100644 index 00000000..0f3eb707 --- /dev/null +++ b/sites/berrymedia.co.kr/__data__/content.html @@ -0,0 +1,386 @@ + + +
+
+ 시간 + 장르 + 프로그램 + 회차 + 세부정보 + 방송시간 +
+ +
+ 00:00 +

연예/오락

+ + + 더트롯쇼 + 36회 + +

+ 15

+

HD

+

+

+

Original

+
+ 60분 +
+
+ 01:00 +

교양

+ + + 특종세상 + 21회 + +

+ 15

+

HD

+

+

+

Original

+
+ 70분 +
+
+ 02:10 +

교양

+ + + 특종세상 + 22회 + +

+ 15

+

HD

+

+

+

Original

+
+ 70분 +
+
+ 03:20 +

교양

+ + + 나는 자연인이다 + 124회 + +

+ ALL

+

HD

+

+

+

Original

+
+ 70분 +
+
+ 04:30 +

패션/뷰티

+ + + 탑시크릿란제리HD + 1회 + +

+ 19

+

HD

+

+

+

Original

+
+ 30분 +
+
+ 05:00 +

연예/오락

+ + + SALON INTERNATIONAL DE LA LINGERIE + 7회 + +

+ 19

+

HD

+

+

+

Original

+
+ 30분 +
+
+ 05:30 +

연예/오락

+ + + 노컷 란제리 페스티벌 + 14회 + +

+ 19

+

HD

+

+

+

Original

+
+ 60분 +
+
+ 06:30 +

연예/오락

+ + + 요가에 빠지다 + 7회 + +

+ 15

+

HD

+

+

+

Original

+
+ 40분 +
+
+ 07:10 +

연예/오락

+ + + 이제 만나러 갑니다 + 20회 + +

+ 12

+

HD

+

+

+

Original

+
+ 70분 +
+
+ 08:20 +

연예/오락

+ + + 미스터트롯 영웅들의 탄생 + 5회 + +

+ 15

+

HD

+

+

+

Original

+
+ 100분 +
+
+ 10:00 +

연예/오락

+ + + 미스터트롯 영웅들의 탄생 + 6회 + +

+ 15

+

HD

+

+

+

Original

+
+ 100분 +
+
+ 11:40 +

연예/오락

+ + + 불타는 트롯맨 5 + 3회 + +

+ 15

+

HD

+

+

+

Original

+
+ 80분 +
+
+ 13:00 +

연예/오락

+ + + 화요일은 밤이 좋아 + 17회 + +

+ 15

+

HD

+

+

+

Original

+
+ 130분 +
+
+ 15:10 +

연예/오락

+ + + 불타는 트롯맨 6 + 3회 + +

+ 15

+

HD

+

+

+

Original

+
+ 110분 +
+
+ 17:00 +

교양

+ + + 행복한 힐링 메이트 + 41회 + +

+ 15

+

HD

+

+

+

Original

+
+ 60분 +
+
+ 18:00 +

연예/오락

+ + + 내일은 미스트롯 2 + 7회 + +

+ 15

+

HD

+

+

+

Original

+
+ 180분 +
+
+ 21:00 +

연예/오락

+ + + 불타는 트롯맨 3 + 2회 + +

+ 15

+

HD

+

+

+

Original

+
+ 110분 +
+
+ 22:50 +

교양

+ + + 나는 자연인이다 + 154회 + +

+ ALL

+

HD

+

+

+

Original

+
+ 70분 +
+
\ No newline at end of file diff --git a/sites/berrymedia.co.kr/__data__/no_content.html b/sites/berrymedia.co.kr/__data__/no_content.html new file mode 100644 index 00000000..e1755d0a --- /dev/null +++ b/sites/berrymedia.co.kr/__data__/no_content.html @@ -0,0 +1,44 @@ + + +
+
+ 시간 + 장르 + 프로그램 + 회차 + 세부정보 + 방송시간 +
+ +
\ No newline at end of file diff --git a/sites/berrymedia.co.kr/berrymedia.co.kr.channels.xml b/sites/berrymedia.co.kr/berrymedia.co.kr.channels.xml new file mode 100644 index 00000000..8d09501d --- /dev/null +++ b/sites/berrymedia.co.kr/berrymedia.co.kr.channels.xml @@ -0,0 +1,11 @@ + + + + BallTV + CookTV + GMTV + GTV + 생활체육TV + UHDDreamTV + + diff --git a/sites/berrymedia.co.kr/berrymedia.co.kr.config.js b/sites/berrymedia.co.kr/berrymedia.co.kr.config.js new file mode 100644 index 00000000..f8b8f2a4 --- /dev/null +++ b/sites/berrymedia.co.kr/berrymedia.co.kr.config.js @@ -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() +} diff --git a/sites/berrymedia.co.kr/berrymedia.co.kr.test.js b/sites/berrymedia.co.kr/berrymedia.co.kr.test.js new file mode 100644 index 00000000..7396aafc --- /dev/null +++ b/sites/berrymedia.co.kr/berrymedia.co.kr.test.js @@ -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([]) +}) diff --git a/sites/ena.skylifetv.co.kr/__data__/content.html b/sites/ena.skylifetv.co.kr/__data__/content.html new file mode 100644 index 00000000..f8dd1e1c --- /dev/null +++ b/sites/ena.skylifetv.co.kr/__data__/content.html @@ -0,0 +1,3274 @@ + + + + + + + + + + + + + + + + + + + + + + + +ENA [엔터테인먼트 DNA] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+
+
+
+
+
+ +
+

ENTERTAINMENT DNA ENA

+

+ skyTV의 모든 오리지널을 한 곳에! 다양한 드라마와 예능 라인업으로 매순간 시청자에게 즐거움을 선사합니다.

+ + +
+
+
+ + + + + +
+
+
+ 편성표 +
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
편성표
시간프로그램 정보장애인등급시간
01:05 + ON AIR + 법쩐 6화 + ON AIR-1575
02:20 + ON AIR + 남이 될 수 있을까 3화 + ON AIR-1575
03:35 + ON AIR + 남이 될 수 있을까 4화 + ON AIR-1575
04:50 + ON AIR + 나는 SOLO 81화 + ON AIR-1590
06:20 + ON AIR + 법쩐 5화 + ON AIR-1580
07:40 + ON AIR + 법쩐 6화 + ON AIR-1575
08:55 + ON AIR + 남이 될 수 있을까 3화 + ON AIR-1575
10:10 + ON AIR + 남이 될 수 있을까 4화 + ON AIR-1575
11:25 + ON AIR + 동백꽃 필 무렵 17화 + ON AIR-1575
12:40 + ON AIR + 동백꽃 필 무렵 18화 + ON AIR-1580
14:00 + ON AIR + 남이 될 수 있을까 3화 + ON AIR-1575
15:15 + ON AIR + 남이 될 수 있을까 4화 + ON AIR-1575
16:30 + ON AIR + 동백꽃 필 무렵 19화 + ON AIR-1580
17:50 + ON AIR + 동백꽃 필 무렵 20화 + ON AIR-1585
19:15 + ON AIR + 법쩐 6화 + ON AIR-1575
20:30 + ON AIR + 명동사랑방 1화 + ON AIR-1585
21:55 + ON AIR + 남이 될 수 있을까 3화 + ON AIR-1575
23:10 + ON AIR + 남이 될 수 있을까 4화 + ON AIR-1575
+
+ 편성표 자세히 보기 +
+
+
+
+
+
+ 채널번호 찾기 +
+ + + + + + +
+
+
+
+ +
+
+ +
+ +
+
+ +
+ +
+
+
+ IPTV +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
IPTV 채널번호
구분채널번호구분채널번호
Genie TV(KT)1B tv(SKB)40
U+ tv(LG)72
+
+
+
+
+ 위성방송 +
+
+ + + + + + + + + + + + + + + + + + + + + +
위성방송 채널번호
구분채널번호구분채널번호
skylife1
+
+
+
+
+ 케이블 +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
케이블 채널번호
구분채널번호구분채널번호
LG헬로비전45딜라이브(DLIVE)58
B tv 알뜰57씨엠비(CMB)37
HCN996
+
+
+
+
+

지역 방송을 시청하시는 분들은 아래 고객센터로 문의 바랍니다.

+

+ LG헬로비전 1588-1000 / 딜라이브 1644-1100 / B tv 알뜰 1877-7000 / CMB 1544-3434 / HCN 1877-8000 +

+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + diff --git a/sites/ena.skylifetv.co.kr/__data__/no_content.html b/sites/ena.skylifetv.co.kr/__data__/no_content.html new file mode 100644 index 00000000..0ae17cc8 --- /dev/null +++ b/sites/ena.skylifetv.co.kr/__data__/no_content.html @@ -0,0 +1,3076 @@ + + + + + + + + + + + + + + + + + + + + + + + +ENA [엔터테인먼트 DNA] + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + +
+
+
+
+
+
+
+ +
+

ENTERTAINMENT DNA ENA

+

+ skyTV의 모든 오리지널을 한 곳에! 다양한 드라마와 예능 라인업으로 매순간 시청자에게 즐거움을 선사합니다.

+ + +
+
+
+ + + + + +
+
+
+ 편성표 +
+
+ +
+ + + + + + + + + + + + + +
편성표
시간프로그램 정보장애인등급시간
+
+ 편성표 자세히 보기 +
+
+
+
+
+
+ 채널번호 찾기 +
+ + + + + + +
+
+
+
+ +
+
+ +
+ +
+
+ +
+ +
+
+
+ IPTV +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
IPTV 채널번호
구분채널번호구분채널번호
Genie TV(KT)1B tv(SKB)40
U+ tv(LG)72
+
+
+
+
+ 위성방송 +
+
+ + + + + + + + + + + + + + + + + + + + + +
위성방송 채널번호
구분채널번호구분채널번호
skylife1
+
+
+
+
+ 케이블 +
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
케이블 채널번호
구분채널번호구분채널번호
LG헬로비전45딜라이브(DLIVE)58
B tv 알뜰57씨엠비(CMB)37
HCN996
+
+
+
+
+

지역 방송을 시청하시는 분들은 아래 고객센터로 문의 바랍니다.

+

+ LG헬로비전 1588-1000 / 딜라이브 1644-1100 / B tv 알뜰 1877-7000 / CMB 1544-3434 / HCN 1877-8000 +

+
+
+
+
+
+ + + + + + + + + + + + + + + + + + + + + + + diff --git a/sites/ena.skylifetv.co.kr/ena.skylifetv.co.kr.channels.xml b/sites/ena.skylifetv.co.kr/ena.skylifetv.co.kr.channels.xml new file mode 100644 index 00000000..a01dc207 --- /dev/null +++ b/sites/ena.skylifetv.co.kr/ena.skylifetv.co.kr.channels.xml @@ -0,0 +1,11 @@ + + + + ENA + ENA PLAY + kids talk talk plus + OLIFE + ONCE + skyUHD + + diff --git a/sites/ena.skylifetv.co.kr/ena.skylifetv.co.kr.config.js b/sites/ena.skylifetv.co.kr/ena.skylifetv.co.kr.config.js new file mode 100644 index 00000000..86e3791f --- /dev/null +++ b/sites/ena.skylifetv.co.kr/ena.skylifetv.co.kr.config.js @@ -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() +} diff --git a/sites/ena.skylifetv.co.kr/ena.skylifetv.co.kr.test.js b/sites/ena.skylifetv.co.kr/ena.skylifetv.co.kr.test.js new file mode 100644 index 00000000..ecf7e5ae --- /dev/null +++ b/sites/ena.skylifetv.co.kr/ena.skylifetv.co.kr.test.js @@ -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([]) +}) diff --git a/sites/foxsports.com.au/foxsports.com.au.config.js b/sites/foxsports.com.au/foxsports.com.au.config.js index a5a84103..ec4d346b 100644 --- a/sites/foxsports.com.au/foxsports.com.au.config.js +++ b/sites/foxsports.com.au/foxsports.com.au.config.js @@ -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 diff --git a/sites/indihometv.com/indihometv.com.channels.xml b/sites/indihometv.com/indihometv.com.channels.xml index 3dddb3a1..d3dada9b 100644 --- a/sites/indihometv.com/indihometv.com.channels.xml +++ b/sites/indihometv.com/indihometv.com.channels.xml @@ -1,153 +1,153 @@ - UseePrime - Usee Photo - IndiKids - Ruang Trampil - SEA Today - Trans7 - TransTV - ANTV - TV One - Metro TV - Kompas TV - iNews - TVRI - Rajawali TV - Rodja TV - JTV - MNC News - Berita Satu - RRI NET - Bali TV - MQTV - MTATV - - JakTV - Nusantara TV - - - - TV Edukasi - Arirang - MUI TV - Tawaf TV - TV9 NU - - - CCTV4 - DW (English) ABC Australia - - Euronews - TRT World - France 24 - CGTN Documentary - SCTV - Indosiar - - + Aljazeera + Animax + ANIPlus + ANTV + Arirang + Asian Food Network + ATV + AXN + Baby First + Bali TV beIN Sports 1 beIN Sports 3 - SPOTV - SPOTV2 - NBA - egg network - Fight Sport - TVN Movies - IMC - Galaxy Premium - Galaxy - - + Berita Satu Bioskop Indonesia + Bloomberg + Boomerang + Cartoon Network + CCTV4 Celestial Movie - ZBioskop - Paramount - Thrill + CGTN Documentary + Cinema World + Citra Dangdut + Citra Drama + News Asia + CNBC Asia + CNBC Indonesia + CNN Indonesia + CNN International + Crime Investigation + CTI Asia + Daai TV + Discovery Channel + Dreamworks + Dunia anak + Dunia Lain + DW (English) + Eat N Go + EBC Asia + egg network + Euronews + FashionTV + Fight Sport + France 24 + Galaxy + Galaxy Premium + HGTV + History + Horee + Horizon Sports + IDX + IMC + IndiKids + Indosiar + iNews + Panda TV + JakTV + JTV + KBS World + Kix + Kompas TV + Kplus + Lifetime + Lingua + Mentari TV + Metro TV + MNC News + MQTV + M Shop + MTATV + MTV Live + My Cinema My Cinema Asia My Family - My Cinema - Cinema World - CNN Indonesia - CNBC Indonesia - Bloomberg - News Asia - CNN International - Aljazeera - CNBC Asia - TVBS News - TVN - AXN - Kplus - KBS World - Citra Drama - Warner - Rock Extreme - TLC - History - Dunia Lain - Rock Entertainment - ANIPlus - Animax - SONE - Kix - Lifetime - TV5Monde - NHK World Premium - - - Zhejiang - - EBC Asia - CTI Asia - Cartoon Network - Horee - Nick Junior - Nickelodeon - Dunia anak - Boomerang MyKidz - Mentari TV - Nat Geo - Discovery Channel Nat Geo Wild - Tech Storm - Crime Investigation - Lingua - Panda TV - Asian Food Network - HGTV - Eat N Go - FashionTV - MTV Live - Citra Dangdut - - O Channel - Insert - - + NBA Net. - Daai TV - IDX - - - M Shop - Seru! - UChannel - NHK World Japan - ATV + NHK World Premium + Nickelodeon + Nick Junior + Insert + Nusantara TV + O Channel + SONE Outdoor Channel - Horizon Sports - - Star Chinese Movies + Paramount + Rajawali TV + Rock Entertainment + Rock Extreme + Rodja TV + RRI NET + Ruang Trampil + SCTV + SEA Today + Seru! + SPOTV + SPOTV2 Star Chinese Channel + Star Chinese Movies + Tawaf TV + Tech Storm + Thrill + TLC + Trans7 + TransTV + TRT World + TV5Monde + TV9 NU + TVBS News + TV Edukasi + MUI TV + TVN + TVN Movies + TV One + TVRI + UChannel + Usee Photo + UseePrime + Warner + ZBioskop + Zhejiang + + + + + + + + + + + + - Baby First - Dreamworks + + + + + + + + + + diff --git a/sites/mediagenie.co.kr/__data__/content.html b/sites/mediagenie.co.kr/__data__/content.html new file mode 100644 index 00000000..ca46d969 --- /dev/null +++ b/sites/mediagenie.co.kr/__data__/content.html @@ -0,0 +1,868 @@ + + + + + + + + + + + + + + + + + + + +미디어지니 [Touch and Feel 콘텐츠 채널] + + + + + + + + + + + + + + + + + +
+ + + + + +
+ +
+ +
+
+
+
+
+ +
+ +
+ 드라마틱 DNA, ENA DRAMA +
+

최고를 꿈꾸는 드라마 전문채널 

+

3049 여성들의 취향을 저격할 드라마 전문 큐레이션 채널
+드라마 덕후들을 위한 즐거운 커뮤니티장
+가장 HOT한 드라마를 가장 빠르게 !!

+
+ +
+
+ + + +
+
+

실시간 편성표

+ + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
실시간 편성표
시간프로그램 제목회차프로그램 정보시청등급
00:20 + 대행사
    +
  • +
  • +
+
5회 +
    +
  • +
  • +
+
15
01:34 + 대행사
    +
  • +
  • +
+
6회 +
    +
  • +
  • +
+
15
02:48 + 빨간 풍선
    +
  • +
  • +
+
9회 +
    +
  • +
  • +
+
15
04:13 + 빨간 풍선
    +
  • +
  • +
+
10회 +
    +
  • +
  • +
+
15
05:40 + 법쩐
    +
  • +
  • +
+
5회 +
    +
  • +
  • +
+
15
06:55 + 법쩐
    +
  • +
  • +
+
6회 +
    +
  • +
  • +
+
15
08:11 + 남이 될 수 있을까
    +
  • +
  • +
+
1회 +
    +
  • +
  • +
+
15
09:28 + 남이 될 수 있을까
    +
  • +
  • +
+
2회 +
    +
  • +
  • +
+
15
10:51 + ON AIR + 오은영 게임
    +
  • +
  • +
+
ON AIR1회 +
    +
  • +
  • +
+
12
12:20 + 대행사
    +
  • +
  • +
+
5회 +
    +
  • +
  • +
+
15
13:41 + 대행사
    +
  • +
  • +
+
6회 +
    +
  • +
  • +
+
15
:59 + 남이 될 수 있을까
    +
  • +
  • +
+
1회 +
    +
  • +
  • +
+
15
16:19 + 남이 될 수 있을까
    +
  • +
  • +
+
2회 +
    +
  • +
  • +
+
15
17:38 + 오은영 게임
    +
  • +
  • +
+
1회 +
    +
  • +
  • +
+
12
19:06 + 무한도전
    +
  • +
  • +
+
392회 +
    +
  • +
  • +
+
12
20:40 + 무한도전
    +
  • +
  • +
+
393회 +
    +
  • +
  • +
+
12
22:15 + 남이 될 수 있을까
    +
  • +
  • +
+
5회 +
    +
  • +
  • +
+
15
23:27 + 법쩐
    +
  • +
  • +
+
6회 +
    +
  • +
  • +
+
15
+
+
+ 편성표 자세히 보기 +

* 이 편성표는 방송사 사정에 따라 변경 될 수 있습니다.

+
+
+
    +
  • 재방송
  • +
  • 본방송
  • +
  • 일반방송
  • +
  • 화면해설
  • +
  • 수화방송
  • +
  • 자막방송
  • +
  • 음성다중
  • +
  • SD일반화질
  • +
  • HD고화질
  • +
  • UHD초고화질
  • +
+
+
    +
  • ALL
  • +
  • 7
  • +
  • 12
  • +
  • 15
  • +
  • 19
  • +
+ 연령대 별 시청 가능 +
+
+
+
+ +
+
+ +

채널 번호

+
+
+
+
+
+ 우리지역찾기 +
+
+ +
+
+ +
+ +
+
+
+
+
+
+ +
+
+
+ +
+ + +
+
+ + + +
+ + +
+ + + + + + + + + + + + + + + + + + + diff --git a/sites/mediagenie.co.kr/__data__/no_content.html b/sites/mediagenie.co.kr/__data__/no_content.html new file mode 100644 index 00000000..e7c5d62e --- /dev/null +++ b/sites/mediagenie.co.kr/__data__/no_content.html @@ -0,0 +1,543 @@ + + + + + + + + + + + + + + + + + + + +미디어지니 [Touch and Feel 콘텐츠 채널] + + + + + + + + + + + + + + + + + +
+ + + + + +
+ +
+ +
+
+
+
+
+ +
+ +
+ 드라마틱 DNA, ENA DRAMA +
+

최고를 꿈꾸는 드라마 전문채널 

+

3049 여성들의 취향을 저격할 드라마 전문 큐레이션 채널
+드라마 덕후들을 위한 즐거운 커뮤니티장
+가장 HOT한 드라마를 가장 빠르게 !!

+
+ +
+
+ + + +
+
+

실시간 편성표

+ + +
+ 편성표 자세히 보기 +

* 이 편성표는 방송사 사정에 따라 변경 될 수 있습니다.

+
+
+
    +
  • 재방송
  • +
  • 본방송
  • +
  • 일반방송
  • +
  • 화면해설
  • +
  • 수화방송
  • +
  • 자막방송
  • +
  • 음성다중
  • +
  • SD일반화질
  • +
  • HD고화질
  • +
  • UHD초고화질
  • +
+
+
    +
  • ALL
  • +
  • 7
  • +
  • 12
  • +
  • 15
  • +
  • 19
  • +
+ 연령대 별 시청 가능 +
+
+
+
+ +
+
+ +

채널 번호

+
+
+
+
+
+ 우리지역찾기 +
+
+ +
+
+ +
+ +
+
+
+
+
+
+ +
+
+
+ +
+ + +
+
+ + + +
+ + +
+ + + + + + + + + + + + + + + + + + + diff --git a/sites/mediagenie.co.kr/mediagenie.co.kr.channels.xml b/sites/mediagenie.co.kr/mediagenie.co.kr.channels.xml new file mode 100644 index 00000000..8e439f16 --- /dev/null +++ b/sites/mediagenie.co.kr/mediagenie.co.kr.channels.xml @@ -0,0 +1,10 @@ + + + + CHING + ENA DRAMA + ENA STORY + Healthmedi + ONT + + diff --git a/sites/mediagenie.co.kr/mediagenie.co.kr.config.js b/sites/mediagenie.co.kr/mediagenie.co.kr.config.js new file mode 100644 index 00000000..b7380cb2 --- /dev/null +++ b/sites/mediagenie.co.kr/mediagenie.co.kr.config.js @@ -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() +} diff --git a/sites/mediagenie.co.kr/mediagenie.co.kr.test.js b/sites/mediagenie.co.kr/mediagenie.co.kr.test.js new file mode 100644 index 00000000..595fff26 --- /dev/null +++ b/sites/mediagenie.co.kr/mediagenie.co.kr.test.js @@ -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([]) +}) diff --git a/sites/tvpassport.com/tvpassport.com.channels.xml b/sites/tvpassport.com/tvpassport.com.channels.xml index 629b0f7c..4fb3c1b4 100644 --- a/sites/tvpassport.com/tvpassport.com.channels.xml +++ b/sites/tvpassport.com/tvpassport.com.channels.xml @@ -214,8 +214,7 @@ MeTV Plus (KYAZ-DT2) Houston TX Logo East Logo West - Magnolia East - Magnolia Network + Magnolia East MeTV Network MGM+ Drive-In MGM+ East