Files
epg/siteini.pack/Netherlands/tvgids.nl.ini
freearhey a597b11307 Init
2021-03-09 22:46:37 +03:00

155 lines
8.3 KiB
INI
Executable File

**------------------------------------------------------------------------------------------------
* @header_start
* WebGrab+Plus ini for grabbing EPG data from TvGuide websites
* @Site: tvgids.nl
* @MinSWversion: V2.0.0
* none
* @Revision 16 - [07/06/2017] Jan van Straaten
* added episode and subtitle
* @Revision 15 - [29/06/2016] Blackbear199
* fix wrong description when artikel_id present on index page
* @Revision 14 - [21/06/2016] Blackbear199
* adapted for site changes
* @Revision 13 - [31/07/2015] Jan van Straaten
* adapted for site changes
* @Revision 12 - [19/03/2015] Francis De Paemeleere
* added showicon + enabled details again (was disabled? before)
* add .channels.xml generation
* @Revision 11 - [21/04/2014] Jan van Straaten
* removes duplicates in index
* @Revision 10 - [09/03/2014] Jan van Straaten
* changed subtitle due to site changes
* @Revision 9 - [28/03/2013] Jan van Straaten
* adapted for a small site change that effected most detail elements
* @Revision 8 - [22/01/2013] Jan van Straaten
* changes in description and subtitle
* @Revision 7 - [12/03/2012] Jan van Straaten
* added writer , improved subtitle , added video quality
* @Revision 6 - []
* Adapted for renewed site, new index_ section
* @Revision 5 - []
* Small corection in director, catch Film op 2 as film serie
* @Revision 4 - []
* Adapted for V.1.0.5
* @Revision 3 - []
* Adapted for site changes
* @Revision 2 - []
* improved index_date.scrub, missing be
* @Revision 1 - []
* Added index_site_channel and index_site_id
* @Remarks:
* none
* @header_end
**------------------------------------------------------------------------------------------------
site {url=tvgids.nl|timezone=Europe/Amsterdam|maxdays=4|cultureinfo=nl-NL|charset=ISO-8859-1|titlematchfactor=90|ratingsystem=KIJKWIJZER|episodesystem=onscreen}
site {loadcookie=tvgids.nl.cookies.txt}
url_index{url|http://www.tvgids.nl/json/lists/programs.php?channels=|channel|&day=|urldate}
url_index.headers {customheader=Accept-Encoding=gzip,deflate}
urldate.format {daycounter|0}
*
scope.range {(splitindex)|end}
index_showsplit.scrub {multi|{"db_|||}
index_temp_1.modify {substring(type=regex)|'index_showsplit' "id\":\"(\d{8})"} * extracts the showd
index_temp_1.modify {cleanup(removeduplicates span=2 link="index_showsplit")} * removes adjacent duplicates
end_scope
*
scope.range {(indexshowdetails)|end}
index_start.scrub {single|datum_start":"||"|"}
index_stop.scrub {single|datum_end":"||"|"}
index_title.scrub {single(separator=": " include=first)|"titel":"||"|"}
index_subtitle.scrub {single(separator=": " exclude=first)|"titel":"||"|"}
index_category.scrub {single(separator="\/")|"genre":"||"|soort}
index_category.scrub {single(separator="\/")|"soort":"||"|kijkwijzer}
index_title.modify {cleanup}
index_subtitle.modify {cleanup}
*
*some shows have a article id,if present we need to use it
*
index_temp_1.scrub {single|id":"||"|"} *use if no article id
index_temp_1.modify {addstart(not "")|programma/} *programm/id#('index_temp_1')
*
index_temp_2.scrub {single|"artikel_id":"||"|"} *use if present
index_temp_2.modify {addstart(not "")|artikel/} *artikel/id#('index_temp_2')
*
index_urlshow.modify {addstart|http://www.tvgids.nl/##url##/}
index_urlshow.modify {replace('index_temp_2' not "")|##url##|'index_temp_2'}
index_urlshow.modify {replace('index_temp_2' "")|##url##|'index_temp_1'}
index_urlshow.headers {customheader=Accept-Encoding=gzip,deflate}
*
end_scope
*
scope.range {(showdetails)|end}
*temp_9.scrub {single()||||}
title.scrub {single(separator=": " include=first)|<div class="programmering">|<h1>|</h1>|</div>}
description.scrub {single|<meta property="og:description"|content="|"|/>}
director.scrub {single(separator=", ")|<li><span class="col-lg-3">Regisseur:|programma_detail_info">|</span>|</li>}
actor.scrub {single(separator=", ")|<li><span class="col-lg-3">Acteurs:|programma_detail_info">|</span>|</li>}
writer.scrub {single(separator=", ")|<li><span class="col-lg-3">Scenario schrijver:|programma_detail_info">|</span>|</li>}
composer.scrub {single(separator=", ")|<li><span class="col-lg-3">Componist:|programma_detail_info">|</span>|</li>}
rating.scrub {multi()|<span class="col-lg-3">Kijkwijzer: </span>|alt="|" />|</span>}
*
presenter.scrub {single(separator=", ")|>In het kort</h2>|<strong>Presentatie:</strong>|</li>|<div id="prog-info-footer"></div>}
writer.scrub {single(separator=", ")|>In het kort</h2>|<strong>Scenario schrijver:</strong>|</li>|<div id="prog-info-footer"></div>}
rating.scrub {multi(exclude="style=")|<strong>Uitzendtijd:|" alt="|" />|<div class="}
ratingicon.scrub {multi|<strong>Uitzendtijd:|<img src="|" alt="|<div class="}
productiondate.scrub {single|>In het kort</h2>|Jaar van premiere:</strong>|</li>|<div id="prog-info-footer"></div>}
temp_2.scrub {single|>In het kort</h2>|<strong>Bijzonderheden:</strong>|</li>|<div id="prog-info-footer"></div>}
showicon.scrub {single|<div id="prog-content">||</div>|</div>}
* episode and subtitle
temp_4.scrub {regex()||Aflevering:\s</span><span.+?>(.+?)</span>||} * episode * subtitle
*temp_1.modify {set|4 de wilden}
episode.modify {substring(type=regex)|'temp_4' "(\d{1,3}(?:\W\d{1,3}){0,1})"}
episode.modify {set(not "")| E'episode'}
subtitle.modify {remove(type=regex)|'temp_4' "(\d{1,3}(?:\W\d{1,3}){0,1})"}
temp_3.scrub {regex()||Seizoen:\s</span><span.+?>(\d{1,2}(?:\W\d{1,2}){0,1})</span>||} * season
temp_3.modify {set(not "")|S'temp_3'}
episode.modify {set|'temp_3''episode'}
episode.modify {cleanup}
*
title.modify {cleanup(tags="<span>""</span>")}
title.modify {cleanup}
title.modify {set(not 'index_title')|'index_title'}
description.modify {replace|</strong>|: }
description.modify {cleanup}
videoaspect.modify {addstart('temp_2' ~ "breedbeeld")|16:9}
videoquality.modify {addstart('temp_2' ~ "HD")|HD}
subtitles.modify {replace(~ "teletekst")|'subtitles'|true}
showicon.modify {substring(type=regex)|<img [^>]*src="([^"]*)"}
*
* convert to short ratings :
rating.modify {replace(null)|Voor alle leeftijden|Alle}
rating.modify {replace(null)|Afgeraden voor kinderen jonger dan 6 jaar|6+}
rating.modify {replace(null)|Afgeraden voor kinderen jonger dan 9 jaar|9+}
rating.modify {replace(null)|Afgeraden voor kinderen jonger dan 12 jaar|12+}
rating.modify {replace(null)|Niet voor personen tot 16 jaar|16+}
rating.modify {replace(null)|Grof taalgebruik|Grof}
rating.modify {replace(null)|drugs- en/of alcoholmisbruik|Drugs}
ratingicon.modify {replace(null)|http://tvgidsassets.nl/img/kijkwijzer/alle_transp.png|alle.png}
ratingicon.modify {replace(null)|http://tvgidsassets.nl/img/kijkwijzer/6_transp.png|6.png}
ratingicon.modify {replace(null)|http://tvgidsassets.nl/img/kijkwijzer/9_transp.png|9.png}
ratingicon.modify {replace(null)|http://tvgidsassets.nl/img/kijkwijzer/12_transp.png|12.png}
ratingicon.modify {replace(null)|http://tvgidsassets.nl/img/kijkwijzer/16_transp.png|16.png}
ratingicon.modify {replace(null)|http://tvgidsassets.nl/img/kijkwijzer/geweld_transp.png|geweld.png}
ratingicon.modify {replace(null)|http://tvgidsassets.nl/img/kijkwijzer/grof_transp.png|grof.png}
ratingicon.modify {replace(null)|http://tvgidsassets.nl/img/kijkwijzer/angst_transp.png|angst.png}
ratingicon.modify {replace(null)|http://tvgidsassets.nl/img/kijkwijzer/discriminatie_transp.png|discriminatie.png}
ratingicon.modify {replace(null)|http://tvgidsassets.nl/img/kijkwijzer/drugs_transp.png|drugs.png}
ratingicon.modify {replace(null)|http://tvgidsassets.nl/img/kijkwijzer/seks_transp.png|seks.png}
end_scope
** _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
** ##### CHANNEL FILE CREATION (only to create the xxx-channel.xml file)
**
** @auto_xml_channel_start
url_index{url|http://www.tvgids.nl/json/lists/channels.php}
{"id":"4","name":"RTL 4","name_short":"RTL 4"}
index_site_channel.scrub {regex||"name":"(.+?)"||}
index_site_id.scrub {regex||{"id":"(\d{1,3})"||}
*index_site_channel.scrub {regex||{[^}]*"id":\s*"[^"\\]*(?:\\.[^"\\]*)*","name":\s*"([^"\\]*(?:\\.[^"\\]*)*)"[^}]*}||}
*index_site_id.scrub {regex||{[^}]*"id":\s*"([^"\\]*(?:\\.[^"\\]*)*)","name":\s*"[^"\\]*(?:\\.[^"\\]*)*"[^}]*}||}
scope.range {(channellist)|end}
index_site_id.modify {cleanup(removeduplicates=equal,100 link="index_site_channel")}
end_scope
** @auto_xml_channel_end