**------------------------------------------------------------------------------------------------ * @header_start * WebGrab+Plus ini for grabbing EPG data from TvGuide websites * @Site: a1.hr * @MinSWversion: V1.1.1/53.15 * @Revision 3 - [16/06/2017] Netuddki * - Refined time grabbing * - Refined Episodes * @Revision 2 - [04/06/2017] Netuddki * - Set timezone to UTC (times are grabbed in UTC) * @Revision 1 - [01/05/2017] Netuddki * - Complete rewrite * - Added episodes, country, rating, production date etc. * @Revision 0 - [27/03/2014] Francis De Paemeleere * - creation * @Remarks: * @header_end **------------------------------------------------------------------------------------------------ site {url=a1.hr|timezone=Europe/Zagreb|maxdays=7|cultureinfo=hr-HR|charset=UTF-8|titlematchfactor=90|ratingsystem=HR} * *site {episodesystem=onscreen} *Enable for Onscreen Episode System site {episodesystem=xmltv_ns} *Enable for xmltv_ns Episode System * urldate.format {datestring|yyyy-MM-dd} url_index{url|https://a1.hr/raspored/bnetepg/call/method::get_entries::channels::|channel|::date::|urldate} url_index.headers {customheader=Accept-Encoding=gzip,deflate} * to speedup the downloading of the index pages index_showsplit.scrub {regex||{"id":(.*?)}||} index_showsplit.modify {cleanup} index_showsplit.modify {remove|\} * index_start.scrub {regex||"start":"(.*?)Z"||} *index_stop.scrub {regex||"end":"(.*?)Z"||} index_duration.scrub {regex||"duration":(.*?),"||} index_title.scrub {regex||"title":"(.*?)"||} index_title.modify {cleanup(style=roman2arabicnumeral)} index_subtitle.scrub {regex||"sub-title":"(.*?)"||} index_description.scrub {regex||"desc":"(.*?)"||} index_description.modify {remove(type=regex)|\(.*?\)(\s\(.*?\))} index_actor.scrub {single(separator="","")|"actors":|["|"]|"writers} index_writer.scrub {single(separator="","")|"writers":|["|"]|"start} index_director.scrub {single(separator="","")|"directors":|["|"]|"actors} * index_temp_1.scrub {single|"image":|"|"|} index_showicon.modify {addstart('index_temp_1' not "")|http://epg.bnet.hr/images/'index_temp_1'} * index_productiondate.modify {substring(type=regex)|'index_description' ",\s(\d{4})\)"} index_country.modify {substring(type=regex)|'index_description' ",\s(.*?),\s\d{4}\)"} index_category.modify {substring(type=regex)|'index_description' "\(.*?\)"} index_category.modify {remove |(} index_category.modify {remove |)} index_rating.modify {substring(type=regex)|'index_title' ",\s.*?\s\((\d{2})\)\s"} index_title.modify {remove(type=regex)|,\s.*?\s\(\d{2}\)} index_description.modify {remove(type=regex)|(\(.*?\))} index_description.modify {cleanup} index_description.modify {addstart("")|Nema informacija} index_presenter.modify {substring(type=regex)|'index_description' ",\s(.*?),\s\d{4}\)"} * * index_episode.modify {substring(type=regex pattern="'S1', ep. 'E1'"", ep. 'E1'""('S1'), serija ('E1'/'Et1')""('S1') ('E1'/'Et1')""('E1'/'Et1')"" 'E1'.")|'index_title' "\d+,\sep\.\s\d+\|,\sep\.\s\d+\|\(\d+\).*?\(\d+/\d+\)\|\(\d+/\d+\)\|\s\d+\."} index_title.modify {remove|'index_episode'} index_title.modify {remove|(T)} index_title.modify {remove|(R)} index_title.modify {remove|(P)} * ** _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ ** ##### CHANNEL FILE CREATION (only to create the xxx-channel.xml file) ** ** @auto_xml_channel_start *url_index{url|https://www.a1.hr/raspored/bnetepg/call/method::get_init2} *index_site_channel.scrub {multi|()||||} *index_site_id.scrub {regex||"channels"\s*:\s*\[([^\]]*)\]||} *scope.range {(channellist)|end} *index_site_channel.modify {substring(type=regex)|'index_site_id' ""id":\d*[^}]*"title":"([^"\\]*(?:\\.[^"\\]*)*)""} *index_site_id.modify {substring(type=regex)|'index_site_id' ""id":(\d*)[^}]*"title":"[^"\\]*(?:\\.[^"\\]*)*""} *index_site_channel.modify {cleanup(style=jsondecode) } *index_site_id.modify {cleanup(style=jsondecode) } *index_site_id.modify {cleanup(removeduplicates=equal,100 link="index_site_channel")} *end_scope ** @auto_xml_channel_end