**------------------------------------------------------------------------------------------------ * @header_start * WebGrab+Plus ini for grabbing EPG data from TvGuide websites * @Site: tvguide.dk * @MinSWversion: 1.1.1/56.26 * none * @Revision 6 - [27/06/2016] Blackbear199 * adapted for version 56.26 season/episode implimentation * @Revision 5 - [19/06/2016] Blackbear199 * fix only 4 days epg * @Revision 4 - [13/06/2016] Blackbear199 * rewrite * @Revision 3 - [25/11/2011] Jan van Straaten * removed links from description * @Revision 2 - [] * new showdetail scrubbing, needs 1.0.7 * @Revision 1 - [] * adapted for V1.0.5 * @Remarks: * WebGrab 56.26 needed for new season/index_episode implimentation * @header_end **------------------------------------------------------------------------------------------------ site {url=tvguide.dk|timezone=UTC+01:00|maxdays=8.1|cultureinfo=da-DK|charset=ISO-8859-1|titlematchfactor=90|ratingsystem=DK|episodesystem=onscreen} * url_index{url|http://www.tvguide.dk/kanaler/|channel|} url_index.headers {customheader=Accept-Encoding=gzip,deflate} urldate.format {datestring|dd-MM-yyyy} *not used * index_showsplit.scrub {multi(include="||} * scope.range{(indexshowdetails)|end} index_start.scrub {single|class="time"|>||} index_start.modify {remove(type=regex)|<.+?>} * index_title.scrub {single|||} index_title.modify {remove(type=regex)|
[^<]*} * index_episode.modify {substring(type=regex pattern="'S1' ('E1')""'S1' ('E1':'Et1')""('E1':'Et1')""('E1')")|'index_title' "((?:\s\d{1,3}\s)?\((?:\d+:)?\d+\))$"} *season/index_episode from title Sx (Ex),Sx (Ex:Etx),(Ex:Etx),(Ex) index_title.modify {remove(type=regex)|\s*\d*\s\(.+?\)$} * remove season/episode info from title end_scope * index_urlshow {url|http://www.tvguide.dk|href="||"|"} index_urlshow.headers {customheader=Accept-Encoding=gzip,deflate} * scope.range{(showdetails)|end} title.scrub {single|

||

|} * title.modify {remove(type=regex)|\s*\d*\s\(.+?\)$} * remove season/episode info from title * description.scrub {single||||} description.modify {remove(type=regex)|} description.modify {remove(type=regex)|} description.modify {remove(type=regex)|} description.modify {remove(type=regex)|} description.modify {remove(type=regex)|} description.modify {remove(type=regex)|
 } * category.modify {substring(type=regex)|'description' "Genre\s:\s.+?
"} description.modify {remove('category' not "")|'category'} category.modify {substring(type=regex)|"\s(?:\/?([^\/]*))*
"} * writer.modify {substring(type=regex)|'description' "Manuskript:\s.+?\s*
"} description.modify {remove('writer' not "")|'writer'} writer.modify {substring(type=regex)|"Manuskript:\s(.+?)\.\s*
" * description.modify {remove(type=regex)|Season\s:\s.+?
} * remove season from description description.modify {remove(type=regex)|Episode\s:\s.+?
} * remove index_episode from description * productiondate.modify {substring(type=regex)|'description' "Year\s:\s\d+
"} description.modify {remove('productiondate' not "")|'productiondate'} productiondate.modify {substring(type=regex)|"\d{4}"} * temp_1.modify {substring(type=regex)|'description' "Tilrettelæggelse:\s.+?
"} *organization? description.modify {remove('temp_1' not "")|'temp_1'} * temp_2.modify {substring(type=regex)|'description' "Instruktion:\s.+?
"} *Instruction? description.modify {remove('temp_2' not "")|'temp_2'} * temp_3.modify {substring(type=regex)|'description' "Teaser\s:<\/b>\s.+?
"} *Teaser? description.modify {remove('temp_3' not "")|'temp_3'} *temp_3.modify {clear(not~ ", ")} temp_3.modify {substring('temp_3' not "" type=regex)|"<\/b>\s(.+?)
"} *temp_3.modify {replace('temp_3' not "")|,|\|} *make multi *country.modify {substring('temp_3' not "" type=element)|'temp_3' 0 1} subtitle.modify {addstart('temp_3' not "")|'temp_3'} * description.modify {remove(type=regex)|Sendt\sførste\sgang\s\d{2}\.\d{2}\.\d{2}
} * presenter.modify {substring(type=regex)|'description' "Vært:\s.+?
"} *actor description.modify {remove('presenter' not "")|'presenter'} presenter.modify {substring('presenter' not "" type=regex)|"
Vært:(.+?)"} * actor.modify {substring(type=regex)|'description' ".+?"} *actor description.modify {remove('actor' not "")|'actor'} actor.modify {substring('actor' not "" type=regex)|"Medvirkende:\s(.+?),"} actor.modify {replace('actor' not "")|,|\|} *make Multi actor.modify {remove('actor' not "" type=regex)|\s\(.+?\)} * actor.modify {substring('actor' "" type=regex)|'description' "(
.+?:\s.+?\.)*"} *actor actor.modify {remove('actor' ~ "
")|\|} description.modify {remove('actor' ~ "
")|'actor'} actor.modify {substring('actor' ~ "
" type=regex)|"
.+?:(.+?)\."} * description.modify {remove(type=regex)|<.+?>} description.modify {remove| (t)} description.modify {remove|...} description.modify {cleanup} description.modify {clear('title')} end_scope * * ** _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ** ##### CHANNEL FILE CREATION (only to create the xxx-channel.xml file) ** ** @auto_xml_channel_start *index_site_channel.scrub {multi|
} *index_site_id.scrub {multi|
} *index_site_id.modify {cleanup(removeduplicates=equal,100 link="index_site_channel")} ** @auto_xml_channel_end