mirror of
https://github.com/iptv-org/epg.git
synced 2025-05-10 00:50:09 -04:00
74 lines
No EOL
4.3 KiB
INI
Executable file
74 lines
No EOL
4.3 KiB
INI
Executable file
**------------------------------------------------------------------------------------------------
|
|
* @header_start
|
|
* WebGrab+Plus ini for grabbing EPG data from TvGuide websites
|
|
* @Site: ictv.net.au
|
|
* @MinSWversion: V1.1.1/51
|
|
* - needs half hour timezone
|
|
* @Revision 2 - [2013/07/25] Jan van Straaten
|
|
* - new showsplit with a date filter
|
|
* @Revision 1 - [2013/07/22] Jan van Straaten
|
|
* - firstshow = 3 , skipps the previous days shows on the index page
|
|
* @Revision 0 - [2013/07/20] Sean McManus, Jan van Straaten
|
|
* - created ini
|
|
* @Remarks:
|
|
* @header_end
|
|
**------------------------------------------------------------------------------------------------
|
|
*
|
|
site {url=ictv.net.au|timezone=UTC+09:30|maxdays=7|cultureinfo=en-AU|charset=ISO-8859-1|titlematchfactor=90}
|
|
*
|
|
index_variable_element.modify {calculate(format=date,-MMMM-dd-yyyy)|'urldate'}
|
|
index_variable_element.modify {cleanup(style=lower)}
|
|
url_index {url()|http://www.ictv.net.au/|urldate|####|.html}
|
|
url_index.modify {replace()|####|'index_variable_element'}
|
|
urldate.format {weekdayname|76-monday|77-tuesday|84-wednesday|79-thursday|80-friday|81-saturday|82-sunday}
|
|
* this site has an varying number of shows from the previous evening on the index page
|
|
* the following loop solves this problem by selecting only the shows of the day of the index_page
|
|
scope.range {(splitindex)|end}
|
|
index_showsplit.scrub {multi|<tbody>||</tbody>|</tbody>} *split in index page
|
|
index_showsplit.modify {|}
|
|
index_temp_1.modify {calculate(type=element format=F0)|'index_showsplit' #}
|
|
index_temp_3.modify {calculate(format=date,vba)|'now'} * used to calculate the date
|
|
loop {('index_temp_1' > "0" max=10)|end} * step through the index page, from last to first
|
|
index_temp_1.modify {calculate(format=f0)|1 -} * index of the page to examine
|
|
index_temp_2.modify {substring(type=element)|'index_showsplit' 'index_temp_1' 1} * copy of the page
|
|
index_temp_2.modify {replace|<tr style|\|} * split in shows
|
|
index_temp_4.modify {calculate(format=date,dd/MM/yy)|'index_temp_3' 'index_temp_1' +} * the date of the index_page of index_temp_2
|
|
index_temp_2.modify {select()|'index_temp_4' ~} * select only the shows of the date
|
|
index_temp_2.modify {replace|\||####} * convert to single value
|
|
index_temp_6.modify {addstart|'index_temp_2'####} * add to target element
|
|
end_loop
|
|
index_showsplit.modify {clear}
|
|
index_showsplit.modify {addstart|'index_temp_6'}
|
|
index_showsplit.modify {replace|####|\|} * back to multi value
|
|
end_scope
|
|
*
|
|
index_start.scrub {multi(separator="</td><td>" include=2)|style="height: 15.0pt;" height="15">|||</tr>|</tr>}
|
|
* this site uses a 'non standard' time syntax e.g. 12:08 am is used for 12:08 which should be 12:08 pm according to the standard
|
|
* correct aand convert to 24 hour system:
|
|
index_temp_6.modify {clear}
|
|
index_temp_6.modify {addstart('index_start' ~ "pm")|pm} * used to calculate the corrected time
|
|
index_start.modify {remove(type=word)|1 1} * remove am and pm
|
|
index_start.modify {calculate('index_temp_6' ~ "pm" format=time,HH:mm)|'index_start' 12:00 +}
|
|
index_title.scrub {multi(separator="</td><td>" include=last)|style="height: 15.0pt;" height="15">|||</tr>|</tr>}
|
|
index_title.modify {cleanup(tags="<"">")}
|
|
*
|
|
* the following checks the date and ignores the show if the date is before now
|
|
index_temp_1.scrub {multi(separator="</td><td>" include=first)|style="height: 15.0pt;" height="15">|||</tr>|</tr>} * the date
|
|
index_temp_1.modify {calculate(format=date,vba)} *convert to vba date number
|
|
index_temp_2.modify {calculate(format=date,vba)|'now'} *'now' converted to vba date number
|
|
index_title.modify {clear('index_temp_1' < 'index_temp_2')} * clear title if date before now (will ignore show)
|
|
*
|
|
* correct start with half an hour (waiting for build 51 that supports half hour timezones)
|
|
* not sure if add or substract!
|
|
*index_start.modify {calculate(format=time)|'index_start' 0:30 +} * to add!
|
|
*index_start.modify {calculate(format=time)|'index_start' 0:30 -} * to substract!
|
|
*
|
|
** _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _
|
|
** ##### CHANNEL FILE CREATION (only to create the xxx-channel.xml file)
|
|
**
|
|
** @auto_xml_channel_start
|
|
** single fixed channel
|
|
*index_site_id.scrub {|}
|
|
*index_site_channel.modify {addstart|ICTV}
|
|
*index_site_id.modify {addstart|ictv}
|
|
** @auto_xml_channel_end |