155 lines
8.3 KiB
INI
Executable File
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
|