**------------------------------------------------------------------------------------------------ * @header_start * WebGrab+Plus ini for grabbing EPG data from TvGuide websites * @Site: sincroguia.tv * @MinSWversion: V1.1.1 * none * @Revision 8 - [11/05/2013] MrSpock * episode system error corrected; more movie program names to be removed * @Revision 7 - [08/11/2012] MrSpock * MediaPortal version using REX * @Revision 1 - [31/07/2011] Jan van Straaten * adapted for V1.0.7 * @Revision 0 - [02/3/2011] Alberto Miguel * none * @Remarks: * Media Portal version, adds elements to description that the MP importer doesn't support * @header_end **------------------------------------------------------------------------------------------------ * site {url=sincroguia.tv|timezone=UTC+01:00|maxdays=14.1|cultureinfo=es-ES|charset=ISO-8859-1|titlematchfactor=0} site {firstshow=1|ratingsystem=ES|episodesystem=onscreen} * urldate.format {datestring|yyyy-MM-dd} url_index {url|https://www.inout.tv/rss/Invoke.php} url_index.headers {method=POST|contenttype=application/x-www-form-urlencoded} index_variable_element.modify {calculate(scope=urlindex format=date)|'urldate'} * takes the datetime value of urldate (unformatted) index_variable_element.modify {calculate(scope=urlindex format=date,yyyy-MM-dd)|'index_variable_element' 14:00:00 +} * adds 14 days to urldate returns it in yyyy-MM-dd format url_index.headers {postdata=function=getEPG&type=XML&platformLogin=inouttv&platformPwd=1n0ut&urlxslt=&StartTime='urldate'&EndTime='index_variable_element'&ChannelIDs='channel'&Programmes=0&Roles=0&Persons=0&Categories=0&Genres=0&Commercial=0&Artistic=0&Parental=0&Bookmark=0&Quantity=-1&HideDescriptions=1&HideChannels=1&HostedImgs=1&iid=CA2936F9-755A-50A0-9B0A-87DE88B5FBE7&ver=1.2} * index_showsplit.scrub {multi||} index_start.scrub {single(separator=" " include=last)||||} index_stop.scrub {single(separator=" " include=last)||||} index_temp_1.scrub {single||||} index_temp_2.scrub {single||||} * *url details: index_urlshow.modify {addstart|https://www.inout.tv/rss/Invoke.php} index_urlshow.headers {method=POST|contenttype=application/x-www-form-urlencoded} index_urlshow.headers {postdata=function=getProgramInfo&type=XML&platformLogin=inouttv&platformPwd=1n0ut&urlxslt='index_variable_element'&level=1} * *titles: title.scrub {single||||} titleoriginal.scrub {single||||} subtitle.modify {clear} subtitle.modify {addstart|'title'} * copy title into subtitle *removes the program name from the title. Result: title with movie name or just program name (if there was no movie name): title.modify {remove|Cien x cien cine: } title.modify {remove|Cine bélico: } title.modify {remove|Cine con mayúsculas: } title.modify {remove|Cine Cuatro: } title.modify {remove|Cine de animación: } title.modify {remove|Cine de barrio: } title.modify {remove|Cine de medianoche: } title.modify {remove|Cine de tarde: } title.modify {remove|Cine Divinity: } title.modify {remove|Cine en familia: } title.modify {remove|Cine matinal: } title.modify {remove|Cine para todos: } title.modify {remove|Cine sin cortes: } title.modify {remove|Cine wéstern: } title.modify {remove|Cinefilia: } title.modify {remove|Cinema-Trix: } title.modify {remove|Clásicos de La 1: } title.modify {remove|Clásicos divinos: } title.modify {remove|De película: } title.modify {remove|Documental: } title.modify {remove|El cine de La 2: } title.modify {remove|El documental de La 2: } title.modify {remove|el megahit: } title.modify {remove|El peliculón: } title.modify {remove|El taquillazo: } title.modify {remove|Energy Classic Movies: } title.modify {remove|Especial cine: } title.modify {remove|Fe en el cine: } title.modify {remove|Fila 9: } title.modify {remove|Grandes documentales: } title.modify {remove|Home Cinema: } title.modify {remove|La película de la semana: } title.modify {remove|la noche de película: } title.modify {remove|La noche de película: } title.modify {remove|LaOtra Sala: } title.modify {remove|Matinal de cine: } title.modify {remove|Multicine: } title.modify {remove|Noche de Lobos: } title.modify {remove|Nuestro Cine: } title.modify {remove|Off Cinema: } title.modify {remove|Querer de cine: } title.modify {remove|Sala de madrugada: } title.modify {remove|Sesión de tarde: } title.modify {remove|Sesión española: } title.modify {remove|Somos cine: } title.modify {remove|una comedia: } title.modify {remove|una de acción: } title.modify {remove|una de aventuras: } title.modify {remove|Una de aventuras: } title.modify {remove|una de suspense: } title.modify {remove|una de terror: } title.modify {remove|una del Oeste: } title.modify {remove|Versión española: } title.modify {remove|Cine: } *Note: All this was needed, because there are several different cases (using ':' as delimiter was not enough): *Cine: Desafio total *La película de la semana: Desafio total *Cine: el megahit: Desafío total *Desafio total *Cine: Star Trek: la película *La película de la semana: Star Trek: la película *Star Trek: la película *Cine: el megahit: Star Trek: la película subtitle.modify {clear('title')} *clear subtitle when there was not movie name subtitle.modify {remove|: 'title'} * removes the movie name and leaves the program name subtitle.modify {clear("Cine")} * remove if only is "Cine" titleoriginal.modify {remove('title')|'titleoriginal'} * erase if title=titleoriginal titleoriginal.modify {remove("Cine")|'titleoriginal'} * erase if title=Cine titleoriginal.modify {remove|'subtitle'} *erase if titleoriginal=subtitle *details: *description.scrub {single||||} *Not needed because always there is long synopis description.scrub {single||||} category.scrub {single(separator=" - ")|||} director.scrub {multi|||} actor.scrub {multi|||} writer.scrub {multi|||} composer.scrub {multi|||} presenter.scrub {multi|||} producer.scrub {multi|||} producer.scrub {multi||PRODUCTOR' >||} rating.scrub {single||||} starrating.scrub {single||||} productiondate.scrub {single||||} episode.scrub {single||||} temp_1.scrub {single||||} temp_2.scrub {single(separator=": " include="Episodio" "Episodi")||||} * episode from title title.modify {remove('temp_2' not "")|: 'temp_2'} * removes episode info from title title.modify {remove('titleoriginal' not "")|: 'titleoriginal'} * removes original title from title titleoriginal.modify {remove('temp_2' not "")|'temp_2'} * removes episode info from originaltitle temp_3.scrub {single||||} * Country * scope.range {(indexshowdetails)|end} index_variable_element.modify {remove|'index_variable_element'} index_variable_element.modify {addstart|&idEvent='index_temp_1'&idProgram='index_temp_2'} * needed for postdata urlshow index_start.modify {remove(type=char)|-3} index_stop.modify {remove(type=char)|-3} index_title.modify {addstart|'index_temp_2'} end_scope.range * scope.range {(showdetails)|end} * description.modify {cleanup} description.modify {remove|Espacio que incluye la emisión de una película} description.modify {remove|Emisión de una película} description.modify {addend(not "")|.} * adds the final point if not empty category.modify {remove|Programas} * It is not a real category rating.modify {replace("0")|0|TP} * starrating.modify {remove(0)|0} starrating.modify {calculate(not "" type=char format=F0)|"*" #} starrating.modify {addend(not "")|/5} * * temp_2 has the episode from the title like "Episodios 23, 24 y 25. We change it to E23-E24-E25 or * like Episodio 2 to E2 temp_2.modify {replace|, |-E} temp_2.modify {replace| y |-E} temp_2.modify {remove|Episodios } temp_2.modify {remove|Episodio } temp_2.modify {remove|Episodi } *12-E13 episode.modify {remove("0")|0} episode.modify {addstart(null)|'temp_2'} temp_1.modify {addstart(notnull)|S} *temp_1.modify{addstart(null)|S0} * adds S0 if no season is informed episode.modify {addstart(notnull)|'temp_1'E} end_scope.range * ** _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ** ##### CHANNEL FILE CREATION (only to create the xxx-channel.xml file) ** @auto_xml_channel_start url_index.headers {postdata=function=getChannelGroups&type=XML&platformLogin=inouttv&platformPwd=1n0ut&urlxslt=&level=3&idd=CA2936F9-755A-50A0-9B0A-87DE88B5FBE7&ver=1.2} index_site_channel.scrub {multi||||} index_site_id.scrub {multi||||} @auto_xml_channel_end * ****************************************************** * Changes for MediaPortal: everything into description (now using REX): * {'subtitle'. }{'episode'. }{'productiondate'. }{'starrating' }{['rating']. }{'category(, )'. }{\n· Int.: 'actor(, )'. }{\n· Dirección: 'director(, )'. }{\n'description' }{\n· Presenta: 'presenter(, )'. }{\n· Guión: 'writer(, )'. }{\n· Música: 'composer(, )'. }{\n· Producción: 'producer(, )'.} * * titleoriginal: not supported by rex * I use starrating (tried others unsuccessfully) for title original and country: starrating.modify {addstart('titleoriginal' not "")|('titleoriginal') } starrating.modify {addstart('temp_3' not "")|'temp_3'. } * country *end