86 lines
4.1 KiB
INI
Executable File
86 lines
4.1 KiB
INI
Executable File
**------------------------------------------------------------------------------------------------
|
|
* @header_start
|
|
* WebGrab+Plus ini for grabbing EPG data from TvGuide websites
|
|
* @Site: kwese.com
|
|
* @MinSWversion: V1.1.1/56.29
|
|
* @Revision 2 - [07/06/2017]
|
|
* - Added new link
|
|
* - Fixed Show scrubbing (start times are messed up on the index site, so we scrub them from detail page now with duration)
|
|
* - Added episode system (even if the episodes fields are mostly empty yet)
|
|
* - Added Rating
|
|
* @Remarks: Some shows are not in order in XML, but will be displayed in order (tested only in KODI)
|
|
*
|
|
* @Revision 1 - [29/05/2017] Mat8861 & Blackbear199 *added retry
|
|
* @Revision 0 - [22/05/2017] Mat8861 & Blackbear199
|
|
* - creation
|
|
* @Remarks:
|
|
* @header_end
|
|
**------------------------------------------------------------------------------------------------
|
|
site {url=kwese.com|timezone=Africa/Johannesburg|maxdays=7|cultureinfo=af|charset=UTF-8|titlematchfactor=90|allowlastpageoverflow}
|
|
site {retry=<retry time-out="30">4</retry>|keepindexpage}
|
|
*
|
|
*
|
|
site {episodesystem=onscreen} *Enable for Onscreen Episode System
|
|
*site {episodesystem=xmltv_ns} *Enable for xmltv_ns Episode System
|
|
*
|
|
url_index.headers {customheader=Accept-Encoding=gzip,deflate}
|
|
url_index{url|https://kwese.com/tvguide?field_category_value=All&field_category_value=All&field_listing_time_value2[value][date]=|urldate|&field_listing_time_value2[value][time]=06%3A00}
|
|
*
|
|
urldate.format {datestring|yyyy-MM-dd}
|
|
*
|
|
index_urlchannellogo.modify {addstart|https://kwese.com/sites/default/files/'index_variable_element'.png}
|
|
*
|
|
index_variable_element.modify {set|'config_site_id'}
|
|
index_showsplit.scrub {multi(includeblock="'index_variable_element'.png")|<div class="listingChannel">|<a id="noStyle"|</a>|</table>}
|
|
*
|
|
index_urlshow {url|https://kwese.com|href='||' >}
|
|
*
|
|
*index_start.scrub {regex||<strong>(\d{2}:\d{2})</strong>||}
|
|
index_title.scrub {regex||</p>(.*?)</div>||}
|
|
index_title.scrub {cleanup}
|
|
*
|
|
start.scrub {regex||views-label-field-listing-time">Time</span>.*?dateTime" content="(.*?)">||}
|
|
duration.scrub {regex||views-label-field-listing-time-3">Duration</span>.*?<div class="field-content">.*?(\d+:\d+)||
|
|
title.scrub {regex||<span class="field-content">(.*?)</span>||}
|
|
description.scrub {single|<div class="field-content">|<p>|</p>|</div>}
|
|
rating.scrub {regex||Restriction(.*?)</div>||}
|
|
rating.modify {cleanup(tags="<"">")}
|
|
*
|
|
temp_1.scrub {regex||views-label-field-season">(.*?)</div>||}
|
|
|
|
temp_1.modify {cleanup(tags="<"">")}
|
|
|
|
temp_2.scrub {regex||views-label-field-episode">(.*?)</div>||}
|
|
|
|
temp_2.modify {cleanup(tags="<"">")}
|
|
|
|
temp_2.modify {addstart('index_temp_1' not "")|'index_temp_1'}
|
|
|
|
episode.modify {set(pattern="Season'S1'Episode'E1'")|'index_temp_2'}
|
|
|
|
*****Enable for rating/episode/duration
|
|
*rating.modify {addstart(not "")|Restriction: }
|
|
*rating.scrub {single|content-rating">|<div class="field-content">|</div>|</div>}
|
|
*episode.modify {addstart(not "")|Ep: }
|
|
*episode.scrub {single|field-episode">|<div class="field-content">|</div>|</div>}
|
|
*duration.scrub {regex||<div class="field-content">\s(\d{2}:\d{2})\smin</div>||} ***add duration to end of description**
|
|
*description.modify {addend| Duration: 'duration' min.} ***add duration to end of description**
|
|
*
|
|
** _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
|
|
** ##### CHANNEL FILE CREATION (only to create the xxx-channel.xml file)
|
|
**
|
|
** @auto_xml_channel_start
|
|
*url_index{url|https://kwese.com/tvguide}
|
|
*index_site_channel.scrub {multi|<div class="listingChannel">|/public/|.png|</div>}
|
|
*index_site_channel.modify {cleanup(style=urldecode)}
|
|
*index_site_channel.modify {remove(type=regex)|_L*.$}
|
|
*index_site_channel.modify {remove(type=regex)|_L_.*$}
|
|
*index_site_channel.modify {remove(type=regex)|_L_*$}
|
|
*index_site_channel.modify {remove(type=regex)|_200px.*$}
|
|
*index_site_channel.modify {replace|_| }
|
|
*index_site_id.scrub {multi|<div class="listingChannel">|/public/|.png|</div>}
|
|
*scope.range {(channellist)|end}
|
|
*index_site_id.modify {cleanup(removeduplicates=equal,100 link="index_site_channel")}
|
|
*end_scope
|
|
** @auto_xml_channel_end
|