**------------------------------------------------------------------------------------------------ * @header_start * WebGrab+Plus ini for grabbing EPG data from TvGuide websites * @Site: plus.es * @MinSWversion: V1.1.1/5404 * @Revision 0 - [16/07/2014] Francis De Paemeleere/ Jan van Straaten * - creation * @Remarks: * @header_end **------------------------------------------------------------------------------------------------ * site {url=plus.es|timezone=UTC+01:00|maxdays=14|cultureinfo=es-ES|charset=iso-8859-15|titlematchfactor=50|ratingsystem=ES} *episodesystem=onscreen url_index{url(debug)|http://www.plus.es/modulo/index.html?params=fecha%3D|urldate|%26hora%3D|subpage|%26cadenas%3D|channel|%26vista%3Dampliada%26modulo%3DGUIParrilla} *http://www.plus.es/modulo/index.html?params=fecha%3D17072014%26hora%3D2000%26cadenas%3DTVE%26vista%3Dampliada%26modulo%3DGUIParrilla urldate.format {datestring|ddMMyyyy} subpage.format {list|0100|0400|0700|1000|1300|1600|1900|2200} * scope.range {(splitindex)|end} index_showsplit.scrub {multi()|
|
()"} index_temp_6.modify {cleanup(removeduplicates link="index_showsplit" span=2)} index_temp_6.modify {clear} * no longer needed * *index_showsplit.modify {addstart(debug)|} * for inspection only * The first start time is always(?) 38 minutes before the first subpage time , here 01:00 - 00:38 = 00:22 index_temp_1.modify {addstart|00:22} * index_temp_2.modify {clear} * will contain the duration of the show index_temp_5.modify {clear} * will contain the new buildup of the index_showsplit loop {(each 'index_temp_6' in 'index_showsplit')|end} * add the start time of this show index_temp_4.modify {clear} * will contain the new show info index_temp_4.modify {addend()|'index_temp_6'} index_temp_4.modify {addend|} index_temp_4.modify {addend|'index_temp_1'} index_temp_4.modify {addend|} * get the duration of this show index_temp_2.modify {substring(type=regex)|'index_temp_6' "\Atime_(\d+?)\s"} * calculate the stop time of this show index_temp_2.modify {calculate(format=time)|60 /} * converted into hh:mm index_temp_1.modify {calculate(format=time)|'index_temp_1' 'index_temp_2' +} * index_temp_4.modify{addend|} index_temp_4.modify{addend|'index_temp_1'} index_temp_4.modify{addend()|} * index_temp_5.modify{addend('index_temp_4' ~ " minutos")|'index_temp_4'##_split_##} * only add this show, if it is a valid one end_loop index_showsplit.modify {clear} index_showsplit.modify{addend|'index_temp_5'} index_showsplit.modify{replace()|##_split_##|\|} end_scope *index_showsplit.modify {addstart(debug)|} * just for inspection of the loop result index_start.scrub {single()|||} index_stop.scrub {single()|||} index_subtitle.scrub {regex()||(.*?)\s*?<||} * optional starttime check index_title.scrub {single()||||} index_title.modify {addstart("")|*?} * show with * as title index_category.scrub {single()||||">} index_urlshow.headers {customheader=Accept-Encoding=gzip,deflate} * to speedup the downloading of the detail pages * title.scrub {single()|
|

|

|
} *titleoriginal.scrub {single|} *subtitle.scrub {single|} *description.scrub {single||

|

|
} description.modify {cleanup} director.scrub {single(separator=", ")|

DIRECTOR

|

|

|

}} actor.scrub {single(separator=", ")|

Reparto

|

|

|

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

Género

|||
} category.modify {remove()|'index_category'} category.modify {cleanup} *presenter.scrub {single|} *producer.scrub {single|} *writer.scrub {single|} *composer.scrub {single|} *rating.scrub {multi|} *ratingicon.scrub {multi|} *productiondate.scrub {single|} starrating.scrub {single|

||

|

} *episode.scrub {single|} *subtitles.scrub {single|} *premiere.scrub {single|} *previousshown.scrub {single|} * ** _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ** ##### CHANNEL FILE CREATION (only to create the xxx-channel.xml file) ** ** @auto_xml_channel_start *url_index {url(debug)|http://www.plus.es/guia/programacion} *index_site_channel.scrub {multi|} *scope.range {(channellist)|end} *index_site_id.modify {cleanup(removeduplicates=equal,100 link="index_site_channel")} *end_scope ** @auto_xml_channel_end