mirror of
https://github.com/iptv-org/epg.git
synced 2025-05-10 00:50:09 -04:00
Merge pull request #2136 from iptv-org/delete-canalplus-afrique.com
Delete canalplus-afrique.com
This commit is contained in:
commit
7dbeecef8e
3 changed files with 0 additions and 492 deletions
|
@ -1,247 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<site site="canalplus-afrique.com">
|
||||
<channels>
|
||||
<channel lang="fr" xmltv_id="2STV.sn" site_id="80122">2S TV</channel>
|
||||
<channel lang="fr" xmltv_id="3TV.bf" site_id="80623">3 TV</channel>
|
||||
<channel lang="fr" xmltv_id="7Info.ci" site_id="80829">7 Info</channel>
|
||||
<channel lang="fr" xmltv_id="10emeRueTV.cd" site_id="80180">10'ème Rue TV</channel>
|
||||
<channel lang="fr" xmltv_id="13emeRue.fr" site_id="80001">13ème Rue</channel>
|
||||
<channel lang="fr" xmltv_id="AB1.fr" site_id="80003">AB 1</channel>
|
||||
<channel lang="fr" xmltv_id="Action.fr" site_id="80004">Action</channel>
|
||||
<channel lang="fr" xmltv_id="Africa24.fr" site_id="80168">Africa 24</channel>
|
||||
<channel lang="fr" xmltv_id="AfricableTV.ml" site_id="80166">Africable TV</channel>
|
||||
<channel lang="fr" xmltv_id="Africanews.cg" site_id="80420">Africanews</channel>
|
||||
<channel lang="fr" xmltv_id="AlafiaTV.ml" site_id="80922">Alafia TV</channel>
|
||||
<channel lang="fr" xmltv_id="AlJazeeraChannel.qa" site_id="80277">Aljazeera Channel</channel>
|
||||
<channel lang="fr" xmltv_id="Animaux.fr" site_id="80759">Animaux</channel>
|
||||
<channel lang="fr" xmltv_id="AntenneA.cd" site_id="80322">Antenne A</channel>
|
||||
<channel lang="fr" xmltv_id="APlus.fr" site_id="80335">A+</channel>
|
||||
<channel lang="fr" xmltv_id="APlusIvoire.ci" site_id="80681">A+ Ivoire</channel>
|
||||
<channel lang="fr" xmltv_id="APlusKidsTV.uk" site_id="80758">A+ Kids TV</channel>
|
||||
<channel lang="fr" xmltv_id="Arewa24.ng" site_id="80686">Arewa 24</channel>
|
||||
<channel lang="fr" xmltv_id="ARTEFrance.fr" site_id="80007">ARTE Français</channel>
|
||||
<channel lang="fr" xmltv_id="AsfiyahiTV.sn" site_id="80612">Asfiyahi TV</channel>
|
||||
<channel lang="fr" xmltv_id="AsongaTV.gq" site_id="80378">Asonga TV</channel>
|
||||
<channel lang="fr" xmltv_id="AuthenticTV.rw" site_id="80749">Authentic TV</channel>
|
||||
<channel lang="fr" xmltv_id="Automotolachaine.fr" site_id="80565">Automoto la chaîne</channel>
|
||||
<channel lang="fr" xmltv_id="BantambaTV.sn" site_id="80569">Bantamba TV</channel>
|
||||
<channel lang="fr" xmltv_id="BBCWorldNewsAfrica.uk" site_id="80008">BBC World News Africa</channel>
|
||||
<channel lang="fr" xmltv_id="BF1.bf" site_id="80337">BF1</channel>
|
||||
<channel lang="fr" xmltv_id="BloombergTVAfrica.us" site_id="80840">Bloomberg TV Africa</channel>
|
||||
<channel lang="fr" xmltv_id="BOneTV.cd" site_id="80273">B-One TV</channel>
|
||||
<channel lang="fr" xmltv_id="Bonferey.ne" site_id="80925">Bonferey</channel>
|
||||
<channel lang="fr" xmltv_id="BTNTV.rw" site_id="80753">BTN TV</channel>
|
||||
<channel lang="fr" xmltv_id="BurkinaInfoTV.bf" site_id="80556">Burkina Info TV</channel>
|
||||
<channel lang="fr" xmltv_id="Business24Africa.ci" site_id="80390">Business 24 Africa</channel>
|
||||
<channel lang="fr" xmltv_id="C8.fr" site_id="80120">C8</channel>
|
||||
<channel lang="fr" xmltv_id="Canal2International.cm" site_id="80172">Canal 2 International</channel>
|
||||
<channel lang="fr" xmltv_id="Canal2Movies.cm" site_id="80671">Canal 2 Movies</channel>
|
||||
<channel lang="fr" xmltv_id="Canal3.bf" site_id="80795">Canal 3</channel>
|
||||
<channel lang="fr" xmltv_id="Canal3Benin.bj" site_id="80546">Canal 3 Benin</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusActionCentre.fr" site_id="80626">Canal + Action Centre</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusActionOuest.fr" site_id="80645">Canal + Action Ouest</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusCinemaCentre.fr" site_id="80125">Canal + Cinéma Centre</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusCinemaOuest.fr" site_id="80016">Canal + Cinéma Ouest</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusEllesCentre.fr" site_id="80302">Canal + Elles Centre</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusEllesOuest.fr" site_id="80402">Canal + Elles Ouest</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusFamilyCentre.fr" site_id="80144">Canal + Family Centre</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusFamilyOuest.fr" site_id="80403">Canal + Family Ouest</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusPopCentre.fr" site_id="80628">Canal + Pop Centre</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusPopOuest.fr" site_id="80646">Canal + Pop Ouest</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusPremiereCentre.fr" site_id="80129">Canal + Première Centre</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusPremiereOuest.fr" site_id="80018">Canal + Première Ouest</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusSport1.fr" site_id="80625">Canal + Sport 1</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusSport2.fr" site_id="80124">Canal + Sport 2</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusSport3.fr" site_id="80149">Canal + Sport 3</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusSport4.fr" site_id="80393">Canal + Sport 4</channel>
|
||||
<channel lang="fr" xmltv_id="CanalPlusSport5.fr" site_id="80394">Canal + Sport 5</channel>
|
||||
<channel lang="fr" xmltv_id="CapitalSanteTV.cm" site_id="80928">Capital Santé TV</channel>
|
||||
<channel lang="fr" xmltv_id="CartoonNetworkFrance.fr" site_id="80756">Cartoon Network France</channel>
|
||||
<channel lang="fr" xmltv_id="CDirect.fr" site_id="80765">CDirect</channel>
|
||||
<channel lang="fr" xmltv_id="CGTNFrench.cn" site_id="80309">CGTN Français</channel>
|
||||
<channel lang="fr" xmltv_id="CheriflaTV.ml" site_id="80669">Cherifla TV</channel>
|
||||
<channel lang="fr" xmltv_id="CISTV.gn" site_id="80602">CIS TV</channel>
|
||||
<channel lang="fr" xmltv_id="CliqueTV.fr" site_id="80615">Clique TV</channel>
|
||||
<channel lang="fr" xmltv_id="CNBCAfrica.za" site_id="80571">CNBC Africa</channel>
|
||||
<channel lang="fr" xmltv_id="CNews.fr" site_id="80048">C News</channel>
|
||||
<channel lang="fr" xmltv_id="CrimeDistrict.fr" site_id="80760">Crime District</channel>
|
||||
<channel lang="fr" xmltv_id="CRTV.cm" site_id="80010">CRTV</channel>
|
||||
<channel lang="fr" xmltv_id="CRTVNews.cm" site_id="80668">CRTV News</channel>
|
||||
<channel lang="fr" xmltv_id="CRTVSportsandEntertainment.cm" site_id="80717">CRTV Sports and Entertainment</channel>
|
||||
<channel lang="fr" xmltv_id="CStar.fr" site_id="80217">C Star</channel>
|
||||
<channel lang="fr" xmltv_id="Cuisines.fr" site_id="80711">Cuisines</channel>
|
||||
<channel lang="fr" xmltv_id="CVK.bf" site_id="80764">CVK</channel>
|
||||
<channel lang="fr" xmltv_id="DigitalCongoTV.cd" site_id="80380">Digital Congo TV</channel>
|
||||
<channel lang="fr" xmltv_id="DiscoveryChannelFrance.fr" site_id="80248">Discovery Channel France</channel>
|
||||
<channel lang="fr" xmltv_id="DiscoveryScienceFrance.fr" site_id="80249">Discovery Science France</channel>
|
||||
<channel lang="fr" xmltv_id="DisneyChannelFrance.fr" site_id="80035">Disney Channel France</channel>
|
||||
<channel lang="fr" xmltv_id="DisneyJuniorFrance.fr" site_id="80075">Disney Junior France</channel>
|
||||
<channel lang="fr" xmltv_id="DjomaTV.gn" site_id="80930">Djoma TV</channel>
|
||||
<channel lang="fr" xmltv_id="DorcelTV.nl" site_id="80638">Dorcel TV</channel>
|
||||
<channel lang="fr" xmltv_id="DorcelTVAfrica.nl" site_id="80702">Dorcel TV Africa</channel>
|
||||
<channel lang="fr" xmltv_id="DouniaTV.ne" site_id="80924">Dounia TV</channel>
|
||||
<channel lang="fr" xmltv_id="DRTVInternational.cg" site_id="80383">DRTV International</channel>
|
||||
<channel lang="fr" xmltv_id="EAfrica.us" site_id="80036">E! Africa</channel>
|
||||
<channel lang="fr" xmltv_id="EcclesiaTV.ci" site_id="80974">Ecclesia TV</channel>
|
||||
<channel lang="fr" xmltv_id="EDAN.fr" site_id="80369">EDAN</channel>
|
||||
<channel lang="fr" xmltv_id="ElectronTV.td" site_id="80387">Electron TV</channel>
|
||||
<channel lang="fr" xmltv_id="Elmouritania.mr" site_id="80384">Elmouritania</channel>
|
||||
<channel lang="fr" xmltv_id="EMCITVAfrique.cd" site_id="80673">EMCI TV Afrique</channel>
|
||||
<channel lang="fr" xmltv_id="EquinoxeTV.cm" site_id="80170">Equinoxe TV</channel>
|
||||
<channel lang="fr" xmltv_id="MGGTV.fr" site_id="80667">ES1</channel>
|
||||
<channel lang="fr" xmltv_id="EspaceTV.gn" site_id="80425">Espace TV</channel>
|
||||
<channel lang="fr" xmltv_id="Etele.bj" site_id="80421">E-Télé Benin</channel>
|
||||
<channel lang="fr" xmltv_id="EuronewsFrench.fr" site_id="80040">EuroNews Français</channel>
|
||||
<channel lang="fr" xmltv_id="Eurosport1.fr" site_id="80041">Eurosport 1 France</channel>
|
||||
<channel lang="fr" xmltv_id="Eurosport2.fr" site_id="80042">Eurosport 2 France</channel>
|
||||
<channel lang="fr" xmltv_id="EvasionTV.gn" site_id="80398">Evasión Guinée</channel>
|
||||
<channel lang="fr" xmltv_id="FarinWata.ng" site_id="80740">Farin Wata</channel>
|
||||
<channel lang="fr" xmltv_id="FashionAfricaTV.sn" site_id="80376">Fashion Africa TV</channel>
|
||||
<channel lang="fr" xmltv_id="FlashTV.rw" site_id="80750">Flash TV</channel>
|
||||
<channel lang="fr" xmltv_id="France2.fr" site_id="80044">France 2</channel>
|
||||
<channel lang="fr" xmltv_id="France3.fr" site_id="80045">France 3</channel>
|
||||
<channel lang="fr" xmltv_id="France5.fr" site_id="80046">France 5</channel>
|
||||
<channel lang="fr" xmltv_id="France24French.fr" site_id="80114">France 24 Français</channel>
|
||||
<channel lang="fr" xmltv_id="Gabon1ere.ga" site_id="80187">Gabon 1ère</channel>
|
||||
<channel lang="fr" xmltv_id="Gabon24.ga" site_id="80427">Gabon 24</channel>
|
||||
<channel lang="fr" xmltv_id="GabonCulture.ga" site_id="80830">Gabon Culture</channel>
|
||||
<channel lang="fr" xmltv_id="GameOne.fr" site_id="80136">Game One</channel>
|
||||
<channel lang="fr" xmltv_id="GenesisTV.rw" site_id="80752">Genesis TV</channel>
|
||||
<channel lang="fr" xmltv_id="GolfeTVAfrica.bj" site_id="80379">Golfe TV Africa</channel>
|
||||
<channel lang="fr" xmltv_id="GulliAfrica.fr" site_id="80367">Gulli Africa</channel>
|
||||
<channel lang="fr" xmltv_id="HistoireTV.fr" site_id="80158">Histoire TV</channel>
|
||||
<channel lang="fr" xmltv_id="I24NewsFrench.il" site_id="80308">I24 News Français</channel>
|
||||
<channel lang="fr" xmltv_id="ImpactTV.bf" site_id="80386">ImpacTV</channel>
|
||||
<channel lang="fr" xmltv_id="InfosportPlus.fr" site_id="80050">InfoSport +</channel>
|
||||
<channel lang="fr" xmltv_id="InfoTV.cm" site_id="80389">InfoTV</channel>
|
||||
<channel lang="fr" xmltv_id="IqraaAfricaEurope.sa" site_id="80279">Iqraa Africa & Europe</channel>
|
||||
<channel lang="fr" xmltv_id="IsangoTV.rw" site_id="80751">Isango TV</channel>
|
||||
<channel lang="fr" xmltv_id="ITV.sn" site_id="80722">ITV</channel>
|
||||
<channel lang="fr" xmltv_id="IvoireTVMusic.fr" site_id="80580">Ivoire TV Music</channel>
|
||||
<channel lang="fr" xmltv_id="JolibaTVNews.ml" site_id="80527">Joliba TV News</channel>
|
||||
<channel lang="fr" xmltv_id="JOne.fr" site_id="80568">J-One</channel>
|
||||
<channel lang="fr" xmltv_id="KalacTV.gn" site_id="80640">Kalac TV</channel>
|
||||
<channel lang="fr" xmltv_id="KC2.rw" site_id="80747">KC2</channel>
|
||||
<channel lang="fr" xmltv_id="KTO.fr" site_id="80278">KTO</channel>
|
||||
<channel lang="fr" xmltv_id="LabelTV.ga" site_id="80622">Label TV</channel>
|
||||
<channel lang="fr" xmltv_id="LampFallTV.sn" site_id="80921">Lamp Fall TV</channel>
|
||||
<channel lang="fr" xmltv_id="LaNouvelleChaineIvorienne.ci" site_id="80715">La Nouvelle Chaîne Ivorienne</channel>
|
||||
<channel lang="fr" xmltv_id="LCA.bf" site_id="80777">LCA</channel>
|
||||
<channel lang="fr" xmltv_id="LCI.fr" site_id="80054">LCI</channel>
|
||||
<channel lang="fr" xmltv_id="LifeTV.ci" site_id="80762">Life TV</channel>
|
||||
<channel lang="fr" xmltv_id="LMTVFrench.ci" site_id="80323">LM TV Français</channel>
|
||||
<channel lang="fr" xmltv_id="LoveNature.ca" site_id="80755">Love Nature</channel>
|
||||
<channel lang="fr" xmltv_id="LTMTV.cm" site_id="80573">LTM TV</channel>
|
||||
<channel lang="fr" xmltv_id="Ludikids.fr" site_id="80931">Ludikids</channel>
|
||||
<channel lang="fr" xmltv_id="LuxTV.cg" site_id="80639">Lux TV</channel>
|
||||
<channel lang="fr" xmltv_id="M6.fr" site_id="80712">M6</channel>
|
||||
<channel lang="fr" xmltv_id="MabokeTV.cg" site_id="80973">Maboke TV</channel>
|
||||
<channel lang="fr" xmltv_id="MadiTV.cd" site_id="80972">Madi TV</channel>
|
||||
<channel lang="fr" xmltv_id="MandeTV.ml" site_id="80585">Mandé TV</channel>
|
||||
<channel lang="fr" xmltv_id="Mangas.fr" site_id="80059">Mangas</channel>
|
||||
<channel lang="fr" xmltv_id="MCRTVNF.cg" site_id="80412">MCR TV NF</channel>
|
||||
<channel lang="fr" xmltv_id="Medi1TVArabic.ma" site_id="80574">Medi 1 TV Arabic</channel>
|
||||
<channel lang="fr" xmltv_id="Melody.fr" site_id="80693">Melody</channel>
|
||||
<channel lang="fr" xmltv_id="MikubaTV.cd" site_id="80929">Mikuba TV</channel>
|
||||
<channel lang="fr" xmltv_id="MishapiVoiceTV.cd" site_id="80627">Mishapi Voice TV</channel>
|
||||
<channel lang="fr" xmltv_id="MoliereTV.cd" site_id="80665">Moliere TV</channel>
|
||||
<channel lang="fr" xmltv_id="MTVFrance.fr" site_id="80065">MTV France</channel>
|
||||
<channel lang="fr" xmltv_id="MTVHitsFrance.fr" site_id="80147">MTV Hits France</channel>
|
||||
<channel lang="fr" xmltv_id="MuseumTV.fr" site_id="80670">Museum International</channel>
|
||||
<channel lang="fr" xmltv_id="MyMediaPrime.cm" site_id="80372">My Media Prime</channel>
|
||||
<channel lang="fr" xmltv_id="NathanTV.fr" site_id="80959">Nathan TV</channel>
|
||||
<channel lang="fr" xmltv_id="NationalGeographicFrance.fr" site_id="80145">National Geographic France</channel>
|
||||
<channel lang="fr" xmltv_id="NationalGeographicWildFrance.fr" site_id="80223">National Geographic Wild France</channel>
|
||||
<channel lang="fr" xmltv_id="NBATV.us" site_id="80555">NBA TV</channel>
|
||||
<channel lang="fr" xmltv_id="NHKWorldJapan.jp" site_id="80307">NHK World Japan</channel>
|
||||
<channel lang="fr" xmltv_id="NickelodeonFrance.fr" site_id="80224">Nickelodeon France</channel>
|
||||
<channel lang="fr" xmltv_id="NickelodeonJunior.fr" site_id="80941">Nickelodeon Junior France</channel>
|
||||
<channel lang="fr" xmltv_id="NollywoodTV.fr" site_id="80270">Nollywood TV</channel>
|
||||
<channel lang="fr" xmltv_id="NollywoodTVEpic.fr" site_id="80600">Nollywood TV Épic</channel>
|
||||
<channel lang="fr" xmltv_id="NovelasTV.fr" site_id="80971">Novelas TV</channel>
|
||||
<channel lang="fr" xmltv_id="NyotaTV.cd" site_id="80428">Nyota TV</channel>
|
||||
<channel lang="fr" xmltv_id="OmegaTV.bf" site_id="80415">Omega TV</channel>
|
||||
<channel lang="fr" xmltv_id="ORTBTV.bj" site_id="80207">ORTB TV</channel>
|
||||
<channel lang="fr" xmltv_id="ORTM1.ml" site_id="80069">ORTM 1</channel>
|
||||
<channel lang="fr" xmltv_id="ORTM2.ml" site_id="80397">ORTM 2</channel>
|
||||
<channel lang="fr" xmltv_id="PacisTV.rw" site_id="80371">Pacis TV</channel>
|
||||
<channel lang="fr" xmltv_id="ParamountChannelFrance.fr" site_id="80303">Paramount Channel France</channel>
|
||||
<channel lang="fr" xmltv_id="PenthouseBlack.us" site_id="80652">Penthouse Black</channel>
|
||||
<channel lang="fr" xmltv_id="PiwiPlus.fr" site_id="80128">Piwi +</channel>
|
||||
<channel lang="fr" xmltv_id="PlanetePlus.fr" site_id="80072">Planète +</channel>
|
||||
<channel lang="fr" xmltv_id="PlanetePlusAE.fr" site_id="80073">Planète + A&E</channel>
|
||||
<channel lang="fr" xmltv_id="PlanetePlusCI.fr" site_id="80142">Planète + CI</channel>
|
||||
<channel lang="fr" xmltv_id="PSTVHD.cd" site_id="80728">PSTV HD</channel>
|
||||
<channel lang="fr" xmltv_id="RaiItaliaAfrica.it" site_id="80947">Rai Italia Africa</channel>
|
||||
<channel lang="fr" xmltv_id="RebaTV1.rw" site_id="80748">Reba TV 1</channel>
|
||||
<channel lang="fr" xmltv_id="RenouveauTV.ml" site_id="80778">Renouveau TV</channel>
|
||||
<channel lang="fr" xmltv_id="RTB.bf" site_id="80121">RTB TV</channel>
|
||||
<channel lang="fr" xmltv_id="RTDSDeltaTV.tg" site_id="80779">RTDS Delta TV</channel>
|
||||
<channel lang="fr" xmltv_id="RTG1.gn" site_id="80202">RTG</channel>
|
||||
<channel lang="fr" xmltv_id="RTI1.ci" site_id="80171">RTI 1</channel>
|
||||
<channel lang="fr" xmltv_id="RTI2.ci" site_id="80271">RTI 2</channel>
|
||||
<channel lang="fr" xmltv_id="RTILa3.ci" site_id="80761">RTI La 3</channel>
|
||||
<channel lang="fr" xmltv_id="RTL9.lu" site_id="80077">RTL 9</channel>
|
||||
<channel lang="fr" xmltv_id="RTNBTV.bi" site_id="80716">RTNB TV</channel>
|
||||
<channel lang="fr" xmltv_id="RTNC.cd" site_id="80208">RTNC</channel>
|
||||
<channel lang="fr" xmltv_id="RTS1.sn" site_id="80076">RTS 1</channel>
|
||||
<channel lang="fr" xmltv_id="RTS2.sn" site_id="80666">RTS 2</channel>
|
||||
<channel lang="fr" xmltv_id="RwandaTV.rw" site_id="80251">Rwanda TV</channel>
|
||||
<channel lang="fr" xmltv_id="SaharaTV.td" site_id="80700">Sahara TV</channel>
|
||||
<channel lang="fr" xmltv_id="SavaneTV.bf" site_id="80664">Savane TV</channel>
|
||||
<channel lang="fr" xmltv_id="ScienceVieTV.fr" site_id="80373">Science & Vie TV</channel>
|
||||
<channel lang="fr" xmltv_id="SenTV.sn" site_id="80377">Sen TV</channel>
|
||||
<channel lang="fr" xmltv_id="SerieClub.fr" site_id="80080">Série Club</channel>
|
||||
<channel lang="fr" xmltv_id="SSMTV.sn" site_id="80411">SSM TV</channel>
|
||||
<channel lang="fr" xmltv_id="STV.cm" site_id="80192">STV</channel>
|
||||
<channel lang="fr" xmltv_id="Sud1ere.fr" site_id="80828">Sud1ère</channel>
|
||||
<channel lang="fr" xmltv_id="SunnaTV.ng" site_id="80926">Sunna TV</channel>
|
||||
<channel lang="fr" xmltv_id="SunuYeuf.sn" site_id="80710">Sunu Yeuf</channel>
|
||||
<channel lang="fr" xmltv_id="SyfyFrance.fr" site_id="80078">Syfy France</channel>
|
||||
<channel lang="fr" xmltv_id="Tele50.cd" site_id="80381">Télé 50</channel>
|
||||
<channel lang="fr" xmltv_id="TeleAfrica.ga" site_id="80235">Télé Africa</channel>
|
||||
<channel lang="fr" xmltv_id="TeleCongo.cg" site_id="80204">Tele Congo</channel>
|
||||
<channel lang="fr" xmltv_id="TeleSahel.ne" site_id="80274">Télé Sahel</channel>
|
||||
<channel lang="fr" xmltv_id="Telesud.fr" site_id="80002">Telesud</channel>
|
||||
<channel lang="fr" xmltv_id="TeleTchad.td" site_id="80275">Télé Tchad</channel>
|
||||
<channel lang="fr" xmltv_id="TeleToonAfrica.fr" site_id="80148">TéléToon Africa</channel>
|
||||
<channel lang="fr" xmltv_id="TF1.fr" site_id="80095">TF 1</channel>
|
||||
<channel lang="fr" xmltv_id="TF1SeriesFilms.fr" site_id="80613">TF 1 Séries Films</channel>
|
||||
<channel lang="fr" xmltv_id="TFM.sn" site_id="80234">TFM</channel>
|
||||
<channel lang="fr" xmltv_id="TFX.fr" site_id="80067">TFX</channel>
|
||||
<channel lang="fr" xmltv_id="TGB.gw" site_id="80499">TGB</channel>
|
||||
<channel lang="fr" xmltv_id="TiJi.fr" site_id="80097">Tiji</channel>
|
||||
<channel lang="fr" xmltv_id="TiVi5Monde.fr" site_id="80545">Tivi 5 Monde</channel>
|
||||
<channel lang="fr" xmltv_id="TLSAfrica.tg" site_id="80404">TLS Africa</channel>
|
||||
<channel lang="fr" xmltv_id="TM1TV.ml" site_id="80723">TM1 TV</channel>
|
||||
<channel lang="fr" xmltv_id="TMC.fr" site_id="80098">TMC</channel>
|
||||
<channel lang="fr" xmltv_id="TNTAfrica.us" site_id="80757">TNT Africa</channel>
|
||||
<channel lang="fr" xmltv_id="ToutelHistoire.fr" site_id="80727">Toute l'Histoire</channel>
|
||||
<channel lang="fr" xmltv_id="TraceAfrica.fr" site_id="80214">Trace Africa Français</channel>
|
||||
<channel lang="fr" xmltv_id="TraceAfrikora.fr" site_id="80714">Trace Afrikora</channel>
|
||||
<channel lang="fr" xmltv_id="TraceGospel.fr" site_id="80620">Trace Gospel</channel>
|
||||
<channel lang="fr" xmltv_id="TraceKitoko.fr" site_id="80621">Trace Kitoko</channel>
|
||||
<channel lang="fr" xmltv_id="TraceMboa.fr" site_id="80266">Trace MBOA</channel>
|
||||
<channel lang="fr" xmltv_id="TraceMziki.fr" site_id="80570">Trace Mziki</channel>
|
||||
<channel lang="fr" xmltv_id="TraceUrban.fr" site_id="80186">Trace Urban Afrique</channel>
|
||||
<channel lang="fr" xmltv_id="Trek.fr" site_id="80566">Trek</channel>
|
||||
<channel lang="fr" xmltv_id="TV5MondeAfrica.fr" site_id="80105">TV5Monde Afrique</channel>
|
||||
<channel lang="fr" xmltv_id="TV7.tg" site_id="80763">TV 7</channel>
|
||||
<channel lang="fr" xmltv_id="TV10.rw" site_id="80326">TV 10</channel>
|
||||
<channel lang="fr" xmltv_id="TVAlBayane.ci" site_id="80776">TV Al Bayane</channel>
|
||||
<channel lang="fr" xmltv_id="TVCBenin.bj" site_id="80923">TVC Benin</channel>
|
||||
<channel lang="fr" xmltv_id="TVGE.gq" site_id="80927">TVGE</channel>
|
||||
<channel lang="fr" xmltv_id="TVT.tg" site_id="80272">TVT</channel>
|
||||
<channel lang="fr" xmltv_id="UshuaiaTV.fr" site_id="80138">Ushuaïa TV</channel>
|
||||
<channel lang="fr" xmltv_id="Vision4.cm" site_id="80388">Vision 4</channel>
|
||||
<channel lang="fr" xmltv_id="Vision4RCA.cm" site_id="80682">Vision 4 RCA</channel>
|
||||
<channel lang="fr" xmltv_id="VixenTV.ca" site_id="80934">Vixen</channel>
|
||||
<channel lang="fr" xmltv_id="VoirPlus.fr" site_id="80215">Voir +</channel>
|
||||
<channel lang="fr" xmltv_id="VoxAfrica.uk" site_id="80193">Voxafrica Afrique</channel>
|
||||
<channel lang="fr" xmltv_id="VoxTV.cg" site_id="80561">Vox TV</channel>
|
||||
<channel lang="fr" xmltv_id="WalfTV.sn" site_id="80572">Walf TV</channel>
|
||||
<channel lang="fr" xmltv_id="WataaaTV.fr" site_id="80614">Wataaa TV</channel>
|
||||
<channel lang="fr" xmltv_id="XXL.fr" site_id="80110">XXL</channel>
|
||||
<channel lang="fr" xmltv_id="ZeeMagic.fr" site_id="80396">Zee Magic</channel>
|
||||
</channels>
|
||||
</site>
|
|
@ -1,94 +0,0 @@
|
|||
const axios = require('axios')
|
||||
const cheerio = require('cheerio')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
|
||||
dayjs.extend(utc)
|
||||
|
||||
module.exports = {
|
||||
site: 'canalplus-afrique.com',
|
||||
days: 2,
|
||||
url: function ({ channel, date }) {
|
||||
const diff = date.diff(dayjs.utc().startOf('d'), 'd')
|
||||
|
||||
return `https://service.canal-overseas.com/ott-frontend/vector/83001/channel/${channel.site_id}/events?filter.day=${diff}`
|
||||
},
|
||||
async parser({ content }) {
|
||||
let programs = []
|
||||
const items = parseItems(content)
|
||||
for (let item of items) {
|
||||
if (item.title === 'Fin des programmes') return
|
||||
const detail = await loadProgramDetails(item)
|
||||
programs.push({
|
||||
title: item.title,
|
||||
description: parseDescription(detail),
|
||||
category: parseCategory(detail),
|
||||
icon: parseIcon(item),
|
||||
start: parseStart(item),
|
||||
stop: parseStop(item)
|
||||
})
|
||||
}
|
||||
|
||||
return programs
|
||||
},
|
||||
async channels() {
|
||||
const html = await axios
|
||||
.get(`https://www.canalplus-afrique.com/bf/guide-tv-maintenant`)
|
||||
.then(r => r.data)
|
||||
.catch(console.log)
|
||||
|
||||
const $ = cheerio.load(html)
|
||||
const script = $('body > script:nth-child(2)').html()
|
||||
const [_, json] = script.match(/window.APP_STATE=(.*);/) || [null, null]
|
||||
const data = JSON.parse(json)
|
||||
const items = data.tvGuide.channels.byZapNumber
|
||||
|
||||
return Object.values(items).map(item => {
|
||||
return {
|
||||
lang: 'fr',
|
||||
site_id: item.epgID,
|
||||
name: item.name
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
async function loadProgramDetails(item) {
|
||||
if (!item.onClick.URLPage) return {}
|
||||
const url = item.onClick.URLPage
|
||||
const data = await axios
|
||||
.get(url)
|
||||
.then(r => r.data)
|
||||
.catch(console.log)
|
||||
return data || {}
|
||||
}
|
||||
|
||||
function parseDescription(detail) {
|
||||
return detail.detail.informations.summary || null
|
||||
}
|
||||
|
||||
function parseCategory(detail) {
|
||||
return detail.detail.informations.subGenre || null
|
||||
}
|
||||
function parseIcon(item) {
|
||||
return item.URLImage || item.URLImageDefault
|
||||
}
|
||||
|
||||
function parseStart(item) {
|
||||
return dayjs.unix(item.startTime)
|
||||
}
|
||||
|
||||
function parseStop(item) {
|
||||
return dayjs.unix(item.endTime)
|
||||
}
|
||||
|
||||
function parseItems(content) {
|
||||
const data = JSON.parse(content)
|
||||
if (!data || !data.timeSlices) return []
|
||||
const items = data.timeSlices.reduce((acc, curr) => {
|
||||
acc = acc.concat(curr.contents)
|
||||
return acc
|
||||
}, [])
|
||||
|
||||
return items
|
||||
}
|
|
@ -1,151 +0,0 @@
|
|||
// [Geo-blocked] node ./scripts/commands/parse-channels.js --config=./sites/canalplus-afrique.com/canalplus-afrique.com.config.js --output=./sites/canalplus-afrique.com/canalplus-afrique.com.channels.xml
|
||||
// npx epg-grabber --config=sites/canalplus-afrique.com/canalplus-afrique.com.config.js --channels=sites/canalplus-afrique.com/canalplus-afrique.com.channels.xml --output=guide.xml --days=2
|
||||
|
||||
const { parser, url } = require('./canalplus-afrique.com.config.js')
|
||||
const axios = require('axios')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const customParseFormat = require('dayjs/plugin/customParseFormat')
|
||||
dayjs.extend(customParseFormat)
|
||||
dayjs.extend(utc)
|
||||
|
||||
jest.mock('axios')
|
||||
|
||||
const channel = {
|
||||
site_id: '80759',
|
||||
xmltv_id: 'Animaux.fr'
|
||||
}
|
||||
|
||||
it('can generate valid url for today', () => {
|
||||
const date = dayjs.utc().startOf('d')
|
||||
expect(url({ channel, date })).toBe(
|
||||
'https://service.canal-overseas.com/ott-frontend/vector/83001/channel/80759/events?filter.day=0'
|
||||
)
|
||||
})
|
||||
|
||||
it('can generate valid url for tomorrow', () => {
|
||||
const date = dayjs.utc().startOf('d').add(1, 'd')
|
||||
expect(url({ channel, date })).toBe(
|
||||
'https://service.canal-overseas.com/ott-frontend/vector/83001/channel/80759/events?filter.day=1'
|
||||
)
|
||||
})
|
||||
|
||||
it('can parse response', done => {
|
||||
const content = `{"timeSlices":[{"contents":[{"title":"A petit pas","subtitle":"Episode 1 - La naissance","thirdTitle":"ANIMAUX","startTime":1660794900,"endTime":1660797900,"onClick":{"displayTemplate":"miniDetail","displayName":"A petit pas","URLPage":"https://service.canal-overseas.com/ott-frontend/vector/83001/event/140280189","URLVitrine":"https://service.canal-overseas.com/ott-frontend/vector/83001/program/104991257/recommendations"},"programID":104991257,"diffusionID":"140280189","URLImageDefault":"https://service.canal-overseas.com/image-api/v1/image/generic","URLImage":"https://service.canal-overseas.com/image-api/v1/image/7dedf4a579b66153a1988637e9e023f5"}],"timeSlice":"1"}]}`
|
||||
axios.get.mockImplementation(url => {
|
||||
if (url === 'https://service.canal-overseas.com/ott-frontend/vector/83001/event/140280189') {
|
||||
return Promise.resolve({
|
||||
data: JSON.parse(`{
|
||||
"currentPage": {
|
||||
"displayName": "A petit pas",
|
||||
"displayTemplate": "detailPage",
|
||||
"URLVitrine": "https://service.canal-overseas.com/ott-frontend/vector/83001/program/104991257/recommendations"
|
||||
},
|
||||
"detail": {
|
||||
"informations": {
|
||||
"programmeType": "EPG",
|
||||
"isInOffer": false,
|
||||
"isInOfferOnDevice": false,
|
||||
"isInOfferForD2G": false,
|
||||
"availableInVoDOnDevice": false,
|
||||
"availableInVoDOnG5": false,
|
||||
"availableInD2GOnDevice": false,
|
||||
"availableInLiveOnDevice": false,
|
||||
"rediffusions": true,
|
||||
"canBeRecorded": false,
|
||||
"channelName": "ANIMAUX",
|
||||
"startTime": 1660794900,
|
||||
"endTime": 1660797900,
|
||||
"title": "A petit pas",
|
||||
"subtitle": "Episode 1 - La naissance",
|
||||
"thirdTitle": "ANIMAUX",
|
||||
"genre": "Découverte",
|
||||
"subGenre": "Doc. Animalier",
|
||||
"editorialTitle": "Découverte, France, 2013, 0h50",
|
||||
"audioLanguage": "VF",
|
||||
"personnalities": [
|
||||
{
|
||||
"prefix": "De :",
|
||||
"content": "Emilie Fertil"
|
||||
}
|
||||
],
|
||||
"summary": "Suivi pendant une année entière de trois bébés animaux, un border collie, un poulain et un lémurien, prédestinés par leur maître à devenir de véritables champions.",
|
||||
"summaryMedium": "Suivi pendant une année entière de trois bébés animaux, un border collie, un poulain et un lémurien, prédestinés par leur maître à devenir de véritables champions.",
|
||||
"programID": 104991257,
|
||||
"sharingURL": "https://www.canalplus-afrique.com/grille-tv/event/140280189-a-petit-pas.html",
|
||||
"EpgId": 80759,
|
||||
"CSA": 1,
|
||||
"HD": false,
|
||||
"3D": false,
|
||||
"diffusionID": "140280189",
|
||||
"duration": "3000",
|
||||
"URLImageDefault": "https://service.canal-overseas.com/image-api/v1/image/generic",
|
||||
"URLImage": "https://service.canal-overseas.com/image-api/v1/image/7dedf4a579b66153a1988637e9e023f5",
|
||||
"URLLogo": "https://service.canal-overseas.com/image-api/v1/image/9d91bf8d25632e77d004cf5b84f296b1",
|
||||
"URLLogoBlack": "https://service.canal-overseas.com/image-api/v1/image/9d91bf8d25632e77d004cf5b84f296b1",
|
||||
"URLVitrine": "https://service.canal-overseas.com/ott-frontend/vector/83001/program/104991257/recommendations"
|
||||
},
|
||||
"diffusions": [
|
||||
{
|
||||
"diffusionDateUTC": 1660794900,
|
||||
"sharingUrl": "https://www.canalplus-afrique.com/grille-tv/event/140280189-a-petit-pas.html",
|
||||
"broadcastId": "140280189",
|
||||
"name": "ANIMAUX",
|
||||
"epgID": "80759",
|
||||
"ZapNumber": "161",
|
||||
"URLLogo": "https://service.canal-overseas.com/image-api/v1/image/9d91bf8d25632e77d004cf5b84f296b1",
|
||||
"URLLogoBlack": "https://service.canal-overseas.com/image-api/v1/image/9d91bf8d25632e77d004cf5b84f296b1"
|
||||
},
|
||||
{
|
||||
"diffusionDateUTC": 1661475600,
|
||||
"sharingUrl": "https://www.canalplus-afrique.com/grille-tv/event/141170299-a-petit-pas.html",
|
||||
"broadcastId": "141170299",
|
||||
"name": "ANIMAUX",
|
||||
"epgID": "80759",
|
||||
"ZapNumber": "161",
|
||||
"URLLogo": "https://service.canal-overseas.com/image-api/v1/image/9d91bf8d25632e77d004cf5b84f296b1",
|
||||
"URLLogoBlack": "https://service.canal-overseas.com/image-api/v1/image/9d91bf8d25632e77d004cf5b84f296b1"
|
||||
}
|
||||
]
|
||||
}
|
||||
}`)
|
||||
})
|
||||
} else {
|
||||
return Promise.resolve({ data: '' })
|
||||
}
|
||||
})
|
||||
|
||||
parser({ content })
|
||||
.then(result => {
|
||||
result = result.map(p => {
|
||||
p.start = p.start.toJSON()
|
||||
p.stop = p.stop.toJSON()
|
||||
return p
|
||||
})
|
||||
|
||||
expect(result).toMatchObject([
|
||||
{
|
||||
start: '2022-08-18T03:55:00.000Z',
|
||||
stop: '2022-08-18T04:45:00.000Z',
|
||||
title: 'A petit pas',
|
||||
icon: 'https://service.canal-overseas.com/image-api/v1/image/7dedf4a579b66153a1988637e9e023f5',
|
||||
category: 'Doc. Animalier',
|
||||
description:
|
||||
'Suivi pendant une année entière de trois bébés animaux, un border collie, un poulain et un lémurien, prédestinés par leur maître à devenir de véritables champions.'
|
||||
}
|
||||
])
|
||||
done()
|
||||
})
|
||||
.catch(done)
|
||||
})
|
||||
|
||||
it('can handle empty guide', done => {
|
||||
parser({
|
||||
content: `{"currentPage":{"displayTemplate":"error","BOName":"Page introuvable"},"title":"Page introuvable","text":"La page que vous demandez est introuvable. Si le problème persiste, vous pouvez contacter l'assistance de CANAL+/CANALSAT.","code":404}`
|
||||
})
|
||||
.then(result => {
|
||||
expect(result).toMatchObject([])
|
||||
done()
|
||||
})
|
||||
.catch(done)
|
||||
})
|
Loading…
Add table
Add a link
Reference in a new issue