Files
epg/siteini.pack/International/horizon.tv.ini
freearhey a597b11307 Init
2021-03-09 22:46:37 +03:00

150 lines
7.4 KiB
INI
Executable File

**------------------------------------------------------------------------------------------------
* @header_start
* WebGrab+Plus ini for grabbing EPG data from TvGuide websites
* @Site: horizon.tv
* @MinSWversion: V2.1.1
* @Revision 7 - [05/10/2018] Blackbear199
* - subtitle fix
* @Revision 6 - [25/07/2017] Blackbear199
* - added lang attrubute for different countries
* @Revision 5 - [24/03/2017] Blackbear199
* - episode fix
* @Revision 4 - [17/01/2017] Blackbear199
* - fix for linux users using php script due to https issues
* @Revision 3 - [24/08/2016] Blackbear199
* - combined all countries into single ini
* - added italy
* @Revision 2 - [07/07/2016] Blackbear199
* - changed api address to one that doesnt change
* @Revision 1 - [19/06/2016] Blackbear199
* - api change,category small fix
* @Revision 0 - [29/04/2016] Blackbear199
* - creation
* @Remarks:
* hozizon.tv all countries.Netherlands,Switzerland,France,Italy,Germany,Poland,Ireland,Czech Republic,Austria,Romania,Hungary,Slovakia
* windows and linux users may need to use different url_index,index_urlshow,url_index(channell.xml creation).be sure to enable correct one.disable the other.
* @header_end
**------------------------------------------------------------------------------------------------
*
site {url=horizon.tv|timezone=UTC|maxdays=7|cultureinfo=en-GB|charset=utf-8|titlematchfactor=90|episodesystem=onscreen}
site {retry=<retry time-out="30">4</retry>}
*
url_index{url|https://web-api.horizon.tv/oesp/api/##country##/web/programschedules/|urldate|/|subpage|} *mono > 5.0.0.1
*url_index{url|http://127.0.0.1/horizon_tv.php?country=##country##&date=|urldate|&subpage=|subpage|&reqtype=1} * linux/windows php
url_index.headers {customheader=Accept-Encoding=gzip,deflate}
url_index.headers {accept=application/json|contenttype=application/json}
url_index.headers {customheader=Accept-Encoding=gzip,deflate}
*
urldate.format {datestring|yyyyMMdd}
subpage.format{list|1|2|3|4}
*
scope.range{(urlindex)|end}
index_variable_element.modify {substring(type=regex)|'config_site_id' "^(.*?)_"}
url_index.modify {replace|##country##|'index_variable_element'}
end_scope
*
global_temp_1.modify {substring(type=regex)|'config_site_id' "_(\d+)__"}
index_urlchannellogo.modify {substring(type=regex)|'config_site_id' "__(.*?)$"}
index_showsplit.scrub {multi|"o":"'global_temp_1'",|{|}|]}}
index_showsplit.modify {cleanup(removeduplicates=equal,100)}
*
* lang configuration
global_temp_2.modify {set|'index_variable_element'}
global_temp_2.modify {replace|NL/nld|nl}
global_temp_2.modify {replace|CH/deu|de}
global_temp_2.modify {replace|CH/fra|fr}
global_temp_2.modify {replace|CH/ita|it}
global_temp_2.modify {replace|DE/deu|de}
global_temp_2.modify {replace|PL/pol|pl}
global_temp_2.modify {replace|IE/eng|en}
global_temp_2.modify {replace|CZ/ces|cz}
global_temp_2.modify {replace|AT/deu|de}
global_temp_2.modify {replace|HU/hun|hu}
*
index_start.scrub {single|"s":||,|,}
index_stop.scrub {single|"e":||,|,}
index_title.scrub {single|"t":"||",|",}
*
index_urlshow {url|https://web-api.horizon.tv/oesp/api/'index_variable_element'/web/listings/|"i":"||"|"} *mono > 5.0.0.1
*index_urlshow {url|http://127.0.0.1/horizon_tv.php?country='index_variable_element'&reqtype=2&showid=|"i":"||"|"} * linux/windows php
index_urlshow.headers {customheader=Accept-Encoding=gzip,deflate}
*
index_title.modify {addend|(lang='global_temp_2')}
*
title.scrub {single|"title":"||",|",}
subtitle.scrub {regex||"secondaryTitle":"(.*?)"[,\}]||}
subtitle.modify {clear('title')}
description.scrub {single|"longDescription":"||",|",}
director.scrub {single(separator="\",\"")|"directors":["||"],|"],}
actor.scrub {single(separator="\",\"")|"cast":["||"],|"],}
*
category.scrub {multi|"categories":[|"title":"|",|}]}
category.scrub {single|"medium":"||",|",}
category.modify {replace|TV|Series}
category.modify {replace|/|\|}
category.modify {cleanup(style=name)}
category.modify {cleanup(removeduplicates=equal,100)}
*
temp_1.scrub {single|"seriesEpisodeNumber":"||"|"}
temp_1.modify {clear(> "1000")}
temp_1.modify {addstart(not "")|E}
temp_2.scrub {single|"seriesNumber":"||"|"}
temp_2.modify {clear(> "10000")}
temp_2.modify {addstart(not "")|S}
temp_1.modify {addstart('temp_2' not "")|'temp_2' }
episode.modify {addstart('temp_1' not "" patten="S'S1'E'E1'""S'S1'""E'E1'")|'temp_1'}
*
productiondate.scrub {single|"year":"||"|"}
temp_3.modify {substring(type=regex)|'config_site_id' "^(\w{2})\/"}
rating.scrub {single|"parentalRating":"||"|"}
rating.modify {clear("0")}
rating.modify {addend(notnull)|(system='temp_3')}
*
starrating.modify {substring(type=regex)|'description' "IMDb.*"}
description.modify {replace|\|| }
description.modify {remove|'starrating'}
description.modify {cleanup(style=jsondecode)}
starrating.modify {substring(type=regex)|"\d\.\d"}
starrating.modify {addend(notnull)|(system=IMDb)}
showicon.scrub {single|"tva-boxcover"|"url":"|"|}}
*
*title.modify {addend|(lang='global_temp_2')}
*subtitle.modify {addend(notnull)|(lang='global_temp_2')}
*description.modify {addend(notnull)|(lang='global_temp_2')}
*category.modify {addend(notnull)|(lang='global_temp_2')}
** _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
* ##### CHANNEL FILE CREATION (only to create the xxx-channel.xml file)
*
** @auto_xml_channel_start
*url_index {url|https://web-api.horizon.tv/oesp/api/|subpage|&personalised=false} *mono > 5.0.0.1
*url_index.modify {replace|_|/web/channels?sort=channelNumber&byLocationId=} *mono > 5.0.0.1
**url_index{url|http://127.0.0.1/horizon_tv.php?chxmldata=|subpage|&reqtype=3} * linux/windows php
*subpage.format {list|NL/nld_24443942973|CH/deu_21656615412|CH/fra_21657127006|CH/ita_21657126954|DE/deu_97245734974|PL/pol_239100967286|IE/eng_6651943228|CZ/ces_667808295264|AT/deu_554823207312|RO/ron_552441895089|HU/hun_552442407296|SK/slk_604944423340}
*index_site_id.scrub {|}
*index_temp_9.modify {set|NL/nld\|CH/deu\|CH/fra\|CH/ita\|DE/deu\|PL/pol\|IE/eng\|CZ/ces\|AT/deu\|RO/ron\|HU/hun\|SK/slk}
*index_temp_1.modify {set|0}
*index_temp_8.scrub {multi|{"entryCount"|||}
*loop{(each "index_temp_7" in 'index_temp_8')|end}
*index_temp_2.modify {substring(type=element)|'index_temp_9' 'index_temp_1' 1}
*index_temp_6.modify {substring(type=regex)|'index_temp_7' "\{\"station\":\{\"id\":\"(.*?subChannels)"}
*index_temp_6.modify {replace(type=regex)|(\",\"countryCode\".*?150.*?\"url\":\")|__}
*index_temp_6.modify {remove(type=regex)|.png(.*?subChannels)|__}
*index_temp_6.modify {remove(type=regex)|(\",\"countryCode\".*?subChannels)|__}
*index_temp_6.modify {addstart|'index_temp_2'_}
*index_temp_6.modify {replace|\||##}
*index_temp_5.modify {substring(type=regex)|'index_temp_7' "\{\"station\":\{\"id\":.*?\"title\":\"([^\"]*)\","}
*index_temp_5.modify {replace|\||##}
*index_temp_4.modify {addend|'index_temp_6'##}
*index_temp_3.modify {addend|'index_temp_5'##}
*index_temp_1.modify {calculate(format=F0)|1 +}
*end_loop
*index_site_id.modify {addstart|'index_temp_4'}
*index_site_id.modify {replace|##|\|}
*index_site_id.modify {remove(type=element)|-1 1}
*index_site_channel.modify {addstart|'index_temp_3'}
*index_site_channel.modify {replace|##|\|}
*index_site_channel.modify {remove(type=element)|-1 1}
*index_site_channel.modify {remove(type=regex)|[^\w\s]}
*index_site_id.modify {cleanup(removeduplicates=equal,100 link="index_site_channel")}
** @auto_xml_channel_end