**------------------------------------------------------------------------------------------------ * @header_start * WebGrab+Plus ini for grabbing EPG data from TvGuide websites * @Site: en.timefor.tv * @MinSWversion: V1.1.1/55.27 * @Revision 4 - [10/11/2015] Francis De Paemeleere * Fix Unix times for special channels. Get the last 10 numbers (prefix numbers are not always the same length) * @Revision 3 - [28/10/2015] Jan van Straaten * Unix start time including date, timezone UTC * @Revision 2 - [02/03/2014] Francis De Paemeleere * add show icon * remove duplicate shows * sync to base version * @Revision 1 - [04/12/2013] Jan van Straaten * - added channellogo * @Revision 0 - [24/11/2013] Jan van Straaten * - Swedisch variant of en.timefor.tv ; based on rev 3 * @Remarks: base version taken from en.timefor.tv * @header_end **------------------------------------------------------------------------------------------------ site {url=se.timefor.tv|timezone=UTC|maxdays=14|cultureinfo=sv-SE|charset=UTF-8|titlematchfactor=90|episodesystem=xmltv_ns} url_index{url|http://se.timefor.tv/listings/|channel|/|urldate|} url_index.headers {customheader=Accept-Encoding=gzip,deflate} * to speedup the downloading of the index pages urldate.format {datestring|yyyy-MM-dd} index_showsplit.scrub {multi||
} * "> and not because indexpage is showing progressbar for current show scope.range {(splitindex)|end} index_showsplit.modify {cleanup(removeduplicates=equal span=1)} end_scope index_urlshow {url|http://se.timefor.tv||href="|" class="programsummary" |} index_urlshow.headers {customheader=Accept-Encoding=gzip,deflate} * to speedup the downloading of the detail pages index_start.scrub {regex||||} index_start.modify {calculate(format=utctime)} * get the channellogo: *example :config_site_id="tv4-sverige" index_variable_element.modify {clear} index_variable_element.modify {addstart(scope=urlindex)|'config_site_id'} index_urlchannellogo.scrub {single|||</a} * this is a big logo * adding this line gets the small one: *index_urlchannellogo.modify {remove|_big} * **************** Showdetails *************** title.scrub {single(includeblock=1)|||} titleoriginal.scrub {single(lang=xx)|Originaltitel :|">|

|} subtitle.scrub {single|Titel avsnitt:|">|

|} * if a real episode title is available temp_5.scrub {single(include=last)|class="epg"|"> - ||

} category.scrub {single(separator="/")|Genre:|">|

|} * finds genre eg. komedie, tv serier, etc. temp_1.scrub {single|Episode:

|sæson |

|} * finds the "sæson" number, if it is a sæson category.scrub {single(separator="/")|Typ:|">|

|} * finds more Typeinfo eg. Film, serie etc. productiondate.scrub {single|Från:|">|

|} * finds productionyear temp_2.scrub {single|Avsnitt:|">|

|} * extracts all episode info incl. sæson-info actor.scrub {multi|

Rollsättning

||

|} * finds actor list, HTML junk is removed with modify later showicon.scrub {regex||]*src=\"([^\"]*)\"[^>]* id=\"pictureHolder\"[^>]*>||} scope.range {(showdetails)|end} director.modify {substring(type=regex)|'actor' "^.*
\s*Regissör\s*$"} actor.modify {remove(type=regex)|'actor' "^.*
\s*Regissör\s*$"} * remove all non actors actor.modify {remove(type=regex)|(

.*)} * remove any actor role (after the
) director.modify {remove(type=regex)|(
.*)} ***episode in xmltv_ns format*** temp_2.modify {remove|sæson 'temp_1'} * removes "sæson" and number in episode temp_2.modify {remove| } temp_2.modify {replace|:|\|} * replace : with | (= make multi) temp_4.modify {substring(type=element)|'temp_2' 1 1} * is the number of episodes temp_2.modify {substring(type=element)|0 1} * is the episode number temp_3.modify {clear} * temp_1 = season * temp_2 = episode * temp_3 = number of seasons * temp_4 = number of episodes temp_1.modify {calculate(not="" format=F0)|1 -} temp_2.modify {calculate(not="" format=F0)|1 -} episode.modify {clear} episode.modify {addend('temp_1' not="")|'temp_1'} episode.modify {addend('temp_3' not="")|/'temp_3'} episode.modify {addend|.} episode.modify {addend('temp_2' not="")|'temp_2'} episode.modify {addend('temp_4' not="")|/'temp_4'} episode.modify {addend|.} episode.modify {clear(="..")} subtitle.modify {addstart(="")|'temp_5'} * add, if no real episode title was found category.modify {replace|/|\|} end_scope ** _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ** ##### CHANNEL FILE CREATION (only to create the xxx-channel.xml file) ** ** @auto_xml_channel_start *subpage.format {list|ee|lv|lt|nl|be|dk|uk|fi|fr|it|no|pl|ru|sw|es|se|cz|tr|de|at} *url_index{url|http://en.timefor.tv/ajax/channel_list.php?language=|subpage|} *index_site_id.scrub {multi||||} *scope.range {(channellist)|end} ** now change the channel names according to the country groups (because there can be duplicate channel names between diff. country groups!) ** find all the country groups *index_temp_1.modify {substring(type=regex)|'index_site_id' "
"0" max=50)|end} *index_temp_5.modify {calculate(format=F0)|1 -} * decrease the loop counter *index_temp_2.modify {substring(type=element)|'index_temp_1' 'index_temp_5' 1} * element to work on *index_site_id.modify {replace(type=regex)|
).*?

.*?)*
|>'index_temp_2' } *end_loop *index_site_channel.modify {addstart|'index_site_id'} ** now get id and channel name *index_site_channel.modify {substring(type=regex)|(.*?)

.*?)*} *index_site_id.modify {substring(type=regex)|)*} ** *index_site_id.modify {cleanup(removeduplicates=equal,100 link="index_site_channel")} *end_scope ** @auto_xml_channel_end