mirror of
https://github.com/iptv-org/epg.git
synced 2025-05-10 09:00:07 -04:00
commit
e3573b6316
4 changed files with 0 additions and 346 deletions
|
@ -1,15 +0,0 @@
|
|||
# rev.bs
|
||||
|
||||
https://www.rev.bs/
|
||||
|
||||
### Download the guide
|
||||
|
||||
```sh
|
||||
npm run grab --- --site=rev.bs
|
||||
```
|
||||
|
||||
### Test
|
||||
|
||||
```sh
|
||||
npm test --- rev.bs
|
||||
```
|
|
@ -1,183 +0,0 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<channels>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="" site_id="359">Me TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="3ABNEnglish.us" site_id="653">3ABN English</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="AEEast.us" site_id="480">A&E East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="AlJazeeraEnglish.qa" site_id="404">Aljazeera English</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="AMCEast.us" site_id="489">AMC East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="AnimalPlanetEast.us" site_id="259">Animal Planet East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="ANT1Satellite.gr" site_id="681">Ant1 Satellite</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="AWE.us" site_id="267">AWE</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="AXSTV.us" site_id="369">AXS TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BabyFirst.us" site_id="318">BabyFirst TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BBCAmericaEast.us" site_id="485">BBC America East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BBCNewsNorthAmerica.uk" site_id="409">BBC World News Americas</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BCNTV.bs" site_id="660">BCN TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BETEast.us" site_id="356">BET East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BETGospel.us" site_id="385">BET Gospel</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BETHerEast.us" site_id="380">BET Her East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BETJams.us" site_id="376">BET Jams</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BETSoul.us" site_id="379">BET Soul</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BigTenNetwork.us" site_id="713">Big Ten Network</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BloombergTV.us" site_id="417">Bloomberg TV US</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="Boomerang.us" site_id="312">Boomerang US</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="Bounce.us" site_id="367">Bounce</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="BravoEast.us" site_id="483">Bravo</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CalaClassics.bs" site_id="358">Cala Classics</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CalaWeather.bs" site_id="412">Cala Weather</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CaribVision.bb" site_id="271">CaribVision</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CartoonNetworkEast.us" site_id="301">Cartoon Network East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CBLTDT.ca" site_id="208">CBC Toronto</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CCTV4America.cn" site_id="688">CCTV 4 America</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CCTV9.cn" site_id="680">CCTV 9</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CFTODT.ca" site_id="220">CTV Toronto</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CICADT.ca" site_id="306">TVO</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CinemaxEast.us" site_id="462">Cinemax East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CITYDT.ca" site_id="219">Citytv Toronto</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CMTMusic.us" site_id="390">CMT Music</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CNBC.us" site_id="403">CNBC US</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CNN.us" site_id="405">CNN USA</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CNNInternationalLatinAmerica.us" site_id="408">CNN International Latin America</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="ComedyCentralEast.us" site_id="354">Comedy Central East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="ComedyTV.us" site_id="355">Comedy TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CookingChannel.us" site_id="251">Cooking Channel</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CourtTVMystery.us" site_id="314">Court TV Mystery</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="CuriosityChannel.us" site_id="260">Curiosity Channel</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="DaystarTV.us" site_id="659">Daystar TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="DiscoveryChannelEast.us" site_id="258">Discovery Channel East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="DiscoveryHomeHealthPanregional.us" site_id="268">Discovery Home & Health</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="DiscoveryKidsPanregional.us" site_id="304">Discovery Kids</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="DiscoveryScience.us" site_id="262">Discovery Science</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="DiscoveryTheaterLatinAmerica.us" site_id="275">Discovery Theater</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="DiscoveryTurboPanregional.us" site_id="263">Discovery Turbo</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="DisneyChannelEast.us" site_id="300">Disney Channel East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="DisneyJuniorEast.us" site_id="320">Disney Junior East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="DisneyXDEast.us" site_id="319">Disney XD East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="MagnoliaNetworkEast.us" site_id="253">DIY Network</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="DWEnglish.de" site_id="676">DW English</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="EEast.us" site_id="350">E! East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="ESPN2Caribbean.us" site_id="705">ESPN 2 Caribbean</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="ESPNCaribbean.us" site_id="700">ESPN Caribbean</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="ESPNU.us" site_id="723">ESPNU</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="ESTV.us" site_id="454">Es TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="Eurochannel.uk" site_id="270">Eurochannel</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="EuronewsEnglish.fr" site_id="426">EuroNews English</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="EWTN.us" site_id="657">EWTN US</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="FightNetwork.ca" site_id="726">Fight Network</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="FoodNetworkEast.us" site_id="252">Food Network East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="FoxBusinessNetwork.us" site_id="410">Fox Business</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="FoxNewsChannel.us" site_id="407">Fox News Channel</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="FoxSoccerPlus.us" site_id="703">Fox Soccer Plus</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="FoxSports2.us" site_id="707">FS2</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="FoxSportsRacing.us" site_id="732">Fox Sports Racing</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="FXEast.us" site_id="456">FX East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="FYIEast.us" site_id="255">FYI East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="GamePlus.ca" site_id="725">Game+</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="GameShowNetworkEast.us" site_id="361">Game Show Network East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="GolfChannel.us" site_id="721">Golf Channel US</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="GoneViralMusic.bb" site_id="282">Gone Viral Music</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="GoneViralTV.bb" site_id="285">Gone Viral TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="GoneViralVogue.bb" site_id="284">Gone Viral Vogue</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="GoneViralXtreme.bb" site_id="283">Gone Viral X-treme</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="Grit.us" site_id="357">Grit</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="HBO2LatinAmerica.us" site_id="507">HBO 2</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="HBOEast.us" site_id="506">HBO East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="HBOFamilyLatinAmerica.us" site_id="502">HBO Family Latinoamérica</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="HBOPlusLatinAmerica.us" site_id="504">HBO + Latinoamérica</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="HBOPopLatinAmerica.us" site_id="541">HBO Pop Latinoamérica</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="HBOXtremeLatinAmerica.us" site_id="542">HBO Xtreme Latinoamérica</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="HGTVEast.us" site_id="250">HGTV East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="HistoryEast.us" site_id="254">History East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="HLN.us" site_id="400">HLN</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="HopeChannelNorthAmerica.us" site_id="658">Hope Channel North America</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="ImpactNetwork.us" site_id="661">Impact Network</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="InspirationTV.us" site_id="651">Inspiration TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="InvestigationDiscoveryEast.us" site_id="265">Investigation Discovery East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="IONPlusEast.us" site_id="487">ION Plus East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="IONTVEast.us" site_id="465">ION TV East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="ISatPanregional.us" site_id="286">I-Sat</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="IslandLuckTV.bs" site_id="224">Island Luck TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="IslandTV.ht" site_id="689">Island TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="JCNChannel14.bs" site_id="214">JCN Channel 14</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="JewelryTV.us" site_id="362">Jewelry TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="JusticeCentralTV.us" site_id="415">Justice Central TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="KAYUDT1.us" site_id="216">FOX (KAYU) Spokane, WA</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="KIRODT1.us" site_id="217">CBS (KIRO) Seattle, WA</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="KTLADT1.us" site_id="227">KTLA Los Angeles, CA</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="KTVXDT1.us" site_id="218">ABC (KTVX) Salt Lake City, UT</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="LawCrime.us" site_id="416">Law & Crime</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="LifetimeEast.us" site_id="470">Lifetime East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="LifetimeMoviesEast.us" site_id="472">Lifetime Movies East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="LifetimeRealWomen.us" site_id="473">Lifetime Real Women</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="MAVTV.us" site_id="459">MavTV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="MLBNetwork.us" site_id="728">MLB Network</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="Movies.us" site_id="586">Movies!</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="MSNBC.us" site_id="402">MSNBC</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="MTV2East.us" site_id="374">MTV 2 East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="MTVEast.us" site_id="370">MTV East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="MyDestinationTV.us" site_id="276">My Destination TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="NationalGeographicEast.us" site_id="256">National Geographic East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="NationalGeographicWildEast.us" site_id="273">National Geographic Wild</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="NBATV.us" site_id="730">NBA TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="NBCSN.us" site_id="717">NBCSN</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="NFLNetwork.us" site_id="711">NFL Network</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="NickelodeonEast.us" site_id="303">Nickelodeon East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="NickMusic.us" site_id="377">NickMusic US</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="OneAmericaNewsNetwork.us" site_id="406">One America News Network</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="OneCaribbeanTelevision.us" site_id="382">One Caribbean TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="OurTV.bs" site_id="212">Our TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="OutdoorChannel.us" site_id="708">Outdoor Channel</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="OWNEast.us" site_id="475">Oprah Winfrey Network East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="ParamountNetworkEast.us" site_id="453">Paramount Network East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="PBSKids.us" site_id="305">PBS Kids</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="PursuitChannel.us" site_id="718">Pursuit Channel</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="Quest.uk" site_id="720">Quest UK</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="RaiItaliaAmerica.it" site_id="682">Rai Italia Nord America</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="RecipeTV.us" site_id="249">Recipe TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="Revolt.us" site_id="340">Revolt</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="SECNetwork.us" site_id="724">SEC Network</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="Space.mx" site_id="231">Space México</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="SportsMax.jm" site_id="735">SportsMax</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="SportsMax2.jm" site_id="745">SportsMax 2</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="StarAction.us" site_id="558">Star Action</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="StarCinema.us" site_id="564">Star Cinema</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="StarClassics.us" site_id="563">Star Classics</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="StarComedy.us" site_id="560">Star Comedy</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="StarFun.us" site_id="561">Star Fun</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="StarHits.us" site_id="557">Star Hits</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="StarSeries.us" site_id="555">Star Series</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="SyfyPanregional.us" site_id="222">Syfy Panregional</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TBNEast.us" site_id="650">TBN US</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TBSEast.us" site_id="225">TBS East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TCMEast.us" site_id="492">TCM</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TeenNickEast.us" site_id="315">TeenNick East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TelePacific.ht" site_id="384">Tele Pacific</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TempoNetworks.us" site_id="381">Tempo Networks</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TheAfricaChannel.us" site_id="269">The Africa Channel</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TheParliamentaryChannel.bs" site_id="420">The Parliamentary Channel</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TheWeatherChannel.us" site_id="411">The Weather Channel</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TheWordNetwork.us" site_id="652">The Word Network</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TLCEast.us" site_id="266">TLC East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TNTEast.us" site_id="450">TNT East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TravelChannelEast.us" site_id="261">Travel Channel East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TreehouseTV.ca" site_id="309">Treehouse TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="truTVEast.us" site_id="414">Tru TV East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TSN1.ca" site_id="715">TSN 1</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TV5MondeUSA.fr" site_id="677">TV5Monde États-Unis</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="TVOne.us" site_id="366">TV One</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="UnivisionEast.us" site_id="679">Univisión Este</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="VH1East.us" site_id="372">VH1 East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="VICETV.us" site_id="341">Vice East</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="WarnerChannelPanregional.us" site_id="221">Warner Channel Panregional</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="WFORDT1.us" site_id="209">CBS (WFOR) Miami, FL</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="WGNDT1.us" site_id="229">WGN-TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="WPBTDT1.us" site_id="213">PBS (WPBT) Miami, FL</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="WPIXDT1.us" site_id="226">WPIX-TV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="WPLGDT1.us" site_id="210">ABC (WPLG) Miami, FL</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="WPTVDT1.us" site_id="215">NBC (WPTV) West Palm Beach, FL</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="WSVNDT1.us" site_id="207">FOX (WSVN) Miami, FL</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="WTVJDT1.us" site_id="206">NBC (WTVJ) Miami, FL</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="WWORDT1.us" site_id="228">MyNetworkTV (WWOR) New York, NY</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="YTVEast.ca" site_id="307">YTV</channel>
|
||||
<channel site="rev.bs" lang="en" xmltv_id="ZNSTV.bs" site_id="211">ZNS TV</channel>
|
||||
</channels>
|
|
@ -1,68 +0,0 @@
|
|||
const _ = require('lodash')
|
||||
const axios = require('axios')
|
||||
const dayjs = require('dayjs')
|
||||
const utc = require('dayjs/plugin/utc')
|
||||
const timezone = require('dayjs/plugin/timezone')
|
||||
|
||||
dayjs.extend(utc)
|
||||
dayjs.extend(timezone)
|
||||
|
||||
module.exports = {
|
||||
site: 'rev.bs',
|
||||
days: 2,
|
||||
url: function ({ date }) {
|
||||
return `https://www.rev.bs/wp-content/uploads/tv-guide/${date.format('YYYY-MM-DD')}_0.json`
|
||||
},
|
||||
parser: async function ({ content, channel, date }) {
|
||||
const programs = []
|
||||
const items0 = parseItems(content, channel)
|
||||
if (!items0.length) return programs
|
||||
const items1 = parseItems(await loadNextItems(date, 1), channel)
|
||||
const items2 = parseItems(await loadNextItems(date, 2), channel)
|
||||
const items3 = parseItems(await loadNextItems(date, 3), channel)
|
||||
const items = _.unionBy(items0, items1, items2, items3, 'sid')
|
||||
items.forEach(item => {
|
||||
const start = parseStart(item, date)
|
||||
const stop = start.add(item.duration, 'm')
|
||||
programs.push({
|
||||
title: item.title,
|
||||
start,
|
||||
stop
|
||||
})
|
||||
})
|
||||
|
||||
return programs
|
||||
}
|
||||
}
|
||||
|
||||
async function loadNextItems(date, index) {
|
||||
const url = `https://www.rev.bs/wp-content/uploads/tv-guide/${date.format(
|
||||
'YYYY-MM-DD'
|
||||
)}_${index}.json`
|
||||
|
||||
return axios
|
||||
.get(url, {
|
||||
responseType: 'arraybuffer'
|
||||
})
|
||||
.then(res => res.data.toString())
|
||||
.catch(console.log)
|
||||
}
|
||||
|
||||
function parseStart(item, date) {
|
||||
const shift = parseInt(item.s)
|
||||
|
||||
return dayjs.tz(date.add(shift, 'm').toString(), 'America/New_York')
|
||||
}
|
||||
|
||||
function parseItems(content, channel) {
|
||||
let data
|
||||
try {
|
||||
data = JSON.parse(content)
|
||||
} catch {
|
||||
return []
|
||||
}
|
||||
|
||||
if (!data || data.status !== 'OK') return []
|
||||
|
||||
return data.data.schedule[channel.site_id] || []
|
||||
}
|
|
@ -1,80 +0,0 @@
|
|||
const { parser, url } = require('./rev.bs.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 date = dayjs.utc('2021-11-21', 'YYYY-MM-DD').startOf('d')
|
||||
const channel = {
|
||||
site_id: '206',
|
||||
xmltv_id: 'WTVJ.us'
|
||||
}
|
||||
|
||||
it('can generate valid url', () => {
|
||||
expect(url({ date, channel })).toBe(
|
||||
'https://www.rev.bs/wp-content/uploads/tv-guide/2021-11-21_0.json'
|
||||
)
|
||||
})
|
||||
|
||||
it('can parse response', done => {
|
||||
axios.get.mockImplementation(url => {
|
||||
if (url === 'https://www.rev.bs/wp-content/uploads/tv-guide/2021-11-21_1.json') {
|
||||
return Promise.resolve({
|
||||
data: Buffer.from(
|
||||
'{"status":"OK","data":{"schedule":{"206":[{"title":"Talk Stoop","sid":43599836,"s":"330.0000","duration":30,"rating":"TVPG"}]}}}'
|
||||
)
|
||||
})
|
||||
} else {
|
||||
return Promise.resolve({
|
||||
data: Buffer.from('{"status":"OK","data":{"schedule":{}}}')
|
||||
})
|
||||
}
|
||||
})
|
||||
|
||||
const content =
|
||||
'{"status":"OK","data":{"schedule":{"205":[{"title":"Rev Pulse 5 - Online Classifieds","sid":43576112,"s":"-120.0000","duration":120,"rating":""}],"206":[{"title":"Saturday Night Live","sid":43599827,"s":"-31.0000","duration":93,"rating":"TV14"}]}}}'
|
||||
parser({ content, channel, date })
|
||||
.then(result => {
|
||||
result = result.map(p => {
|
||||
p.start = p.start.toJSON()
|
||||
p.stop = p.stop.toJSON()
|
||||
return p
|
||||
})
|
||||
expect(result).toMatchObject([
|
||||
{
|
||||
start: '2021-11-21T04:29:00.000Z',
|
||||
stop: '2021-11-21T06:02:00.000Z',
|
||||
title: 'Saturday Night Live'
|
||||
},
|
||||
{
|
||||
start: '2021-11-21T10:30:00.000Z',
|
||||
stop: '2021-11-21T11:00:00.000Z',
|
||||
title: 'Talk Stoop'
|
||||
}
|
||||
])
|
||||
done()
|
||||
})
|
||||
.catch(err => {
|
||||
done(err)
|
||||
})
|
||||
})
|
||||
|
||||
it('can handle empty guide', done => {
|
||||
parser({
|
||||
date,
|
||||
channel,
|
||||
content: '<html lang="en"><head></head><body></body></html>'
|
||||
})
|
||||
.then(result => {
|
||||
expect(result).toMatchObject([])
|
||||
done()
|
||||
})
|
||||
.catch(err => {
|
||||
done(err)
|
||||
})
|
||||
})
|
Loading…
Add table
Add a link
Reference in a new issue