102 lines
5.9 KiB
INI
Executable File
102 lines
5.9 KiB
INI
Executable File
**------------------------------------------------------------------------------------------------
|
|
* @header_start
|
|
* WebGrab+Plus ini for grabbing EPG data from TvGuide websites
|
|
* @Site: uk-sky.com
|
|
* @MinSWversion: V1.1.1/55.26
|
|
* none
|
|
* @Revision 9 - [21/08/2018] r00ty
|
|
* Adjusted to use single new single URL programme guide, change 320/320 to desired icon size
|
|
* @Revision 8 - [08/06/2016] Blackbear199
|
|
* season/episode improvements.added rating,rating icon
|
|
* @Revision 7 - [03/06/2016] Blackbear199
|
|
* get rid of duplicates
|
|
* @Revision 6 - [06/11/2015] Jan van Straaten
|
|
* Added productiondate
|
|
* @Revision 5 - [23/08/2015] Jan van Straaten
|
|
* Adapted to new (simpler) detail pages of the site
|
|
* @Revision 4 - [18/05/2012] Quake505
|
|
* Small change to the Part Scrub, Added an episode scrub, (yes again) - Ready for GA?
|
|
* @Revision 3 - []
|
|
* Changed the Part scrub again, also corrected the program start
|
|
* @Revision 2 - []
|
|
* Updates made recommend by Jan, updated the part scrub, updated productiondate and updated description mod
|
|
* @Revision 1 - []
|
|
* This is the first version of the file
|
|
* @Remarks:
|
|
* less details than before!
|
|
* @header_end
|
|
**------------------------------------------------------------------------------------------------
|
|
site {url=tv.sky.com|timezone=UTC|maxdays=7|cultureinfo=en-GB|charset=ISO-8859-1|episodesystem=onscreen|ratingsystem=UK}
|
|
|
|
url_index{url|http://awk.epgsky.com/hawk/linear/schedule/|urldate|/|channel|}
|
|
url_index.headers {customheader=Accept-Encoding=gzip,deflate} * to speedup the downloading of the index pages
|
|
urldate.format {datestring|yyyyMMdd}
|
|
*
|
|
url_index.headers {accept=application/json, text/javascript, */*}
|
|
*
|
|
index_showsplit.scrub {regex||"events":\[(?:\s{0,1000}\{([^}]*)(?:\}\,?))*\s{0,1000}]||}
|
|
*
|
|
index_variable_element.modify {set|'config_site_id'}
|
|
index_urlchannellogo.modify {addstart|https://d2n0069hmnqmmx.cloudfront.net/epgdata/1.0/newchanlogos/320/320/skychb'index_variable_element'.png}
|
|
*
|
|
scope.range{(indexshowdetails)|end}
|
|
index_start.scrub {single|"st"|:|,}
|
|
index_duration.scrub {single|"d"|:|,}
|
|
index_duration.modify {calculate(format=time)|60 / 60 /}
|
|
index_description.scrub {single|"sy"|:"|",|",}
|
|
index_title.scrub {single|"t"|:"|",|",}
|
|
index_category.scrub {single|"cgid"|:|,}
|
|
index_rating.scrub {single|"r"|:"|",|",}
|
|
|
|
index_description.modify {remove|('productiondate')}
|
|
index_description.modify {remove(type=regex)|\(\d+\smins\)}
|
|
*
|
|
* episode scrubbed from index_description,most are in () but some are not
|
|
index_temp_1.modify {substring(type=regex)|'index_description' "\(([ES0-9].+?)\)"} season/episode or just episode in ()
|
|
index_description.modify {remove(index_temp_1 not "" type=regex)|\s\(S\d+.*?[Ee].*?\d+\)} *(Sxx..E..xx) *disable to leave season/episode info in index_description
|
|
index_description.modify {remove(index_temp_1 not "" type=regex)|\s\(E.*\d+\)} *(E..xx) *disable to leave season/episode info in index_description
|
|
index_description.modify {remove(index_temp_1 not "" type=regex)|\s\(\d+\/\d+\)} *(xx/xx) *disable to leave season/episode info in index_description
|
|
index_description.modify {remove(index_temp_1 not "" type=regex)|\s\(\d+\sof\s\d+\)} *(xx of xx) *disable to leave season/episode info in index_description
|
|
index_description.modify {cleanup(index_temp_1 not "")}
|
|
index_temp_1.modify {replace('index_temp_1' not "" type=regex)|,*\s*[Ee]p*\s*|E}
|
|
index_temp_1.modify {replace('index_temp_1' not "")|S0|S}
|
|
index_temp_1.modify {replace('index_temp_1' not "")|E0|E}
|
|
index_temp_1.modify {replace('index_temp_1' not "")|\sof\s|/}
|
|
index_temp_1.modify {addstart('index_temp_1' not "")|E} *check if we have only xx/xx
|
|
index_temp_1.modify {replace|ES|S} *season/episode present start with S
|
|
index_temp_1.modify {replace|EE|E} *no season/episode only start with E
|
|
index_episode.modify {addstart('index_temp_1' not "")|'index_temp_1'}
|
|
*
|
|
index_temp_2.modify {substring('index_episode' "" type=regex)|'index_description' "S\d+,*\s*E[Pp]\d+"} *Sxx, Epxx or SxxE.xx or Sxx E.xx no ()
|
|
index_description.modify {remove('index_temp_2' not "" type=regex)|S\d+,*\s*E[Pp]\d+\/?\d*} *disable to leave season/episode info in index_description
|
|
index_temp_2.modify {replace('index_temp_2' not "" type=regex)|,*\s*E[Pp]|E}
|
|
index_episode.modify {addstart('index_episode' "")|'index_temp_2'}
|
|
*
|
|
index_temp_3.scrub {single|"seasonnumber"|:|,}
|
|
index_temp_3.modify {replace('index_temp_3' not "")|Season |S}
|
|
index_temp_4.scrub {single|"episodenumber"|:|,}
|
|
index_temp_4.modify {replace('index_temp_4' not "")|Episode |E}
|
|
index_temp_4.modify {addstart('index_temp_3' not "")|'index_temp_3'}
|
|
index_episode.modify {addstart('index_episode' "")|'index_temp_4'}
|
|
*
|
|
*move eposide to temp to remove unwanted matches
|
|
index_temp_5.modify {addstart('index_episode' not "")|'index_episode'}
|
|
index_episode.modify {clear}
|
|
index_episode.modify {substring('index_episode' "" type=regex)|'index_temp_5' "S\d+E\d+\/\d+"} *SxxExx/xx
|
|
index_episode.modify {substring('index_episode' "" type=regex)|'index_temp_5' "S\d+E\d+"} *SxxExx
|
|
index_episode.modify {substring('index_episode' "" type=regex)|'index_temp_5' "E\d+\/\d+"} *Exx/xx
|
|
index_episode.modify {substring('index_episode' "" type=regex)|'index_temp_5' "E\d+"} *Exx
|
|
end_scope
|
|
** _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
|
|
** ##### CHANNEL FILE CREATION (only to create the xxx-channel.xml file)
|
|
**
|
|
** Note, the default URL will fetch the channel list based on the location being London. The /1 at the end of the URL needs to be changed, to fetch different regions.
|
|
*url_index{url|http://awk.epgsky.com/hawk/linear/services/4101/1}
|
|
*index_site_channel.scrub {multi|"t"|:"|",|",}
|
|
*index_site_id.scrub {multi|"sid"|:"|",|",}
|
|
*index_site_channel.modify {replace|\'|}
|
|
*scope.range {(channellist)|end}
|
|
*index_site_id.modify {cleanup(removeduplicates=equal,100 link="index_site_channel")}
|
|
*end_scope
|
|
** @auto_xml_channel_end
|