Australia
Shepherd
Shepherd is a series of scripts to call a series of grabbers and get the best tv guide.
It then runs more scripts to get information from the movie database and sort out series and episodes. Get it from http://svn.whuffy.com/ and follow the instructions for installation here, as well the notes on how to integrate with Freevo. http://svn.whuffy.com/index.cgi/wiki/Installation
tv_grab_au
search Google for "tv_grab_au". Its not part of the xmltv package yet, but its usable and its out there. Try http://www.immir.com/tv_grab_au for the perl based script.
There is an error in the listings source for Australia where xml special characters are escaped twice, so you get & rather than & . Here's a small script that grabs the listings and fixes this error. To use this script, save it as a file (I used tv_grab_au_corrections), copy said file into /usr/bin/, and make it executable. In the freevo local config (local_conf.py) modify the XMLTV_GRABBER line to point to this script.
Because Australia's tv listings are not updated regularly, the 4kb limit may result in constant errors. If a standard grab does not get you 7 days programming for at least 4 stations, change the '4' in the 8th and 9th lines to '3'.
XMLTV_FILE="/tmp/TV.xml" LISTINGS_FILE=`date +"$HOME/xmltv/listings_%Y%m%d.xml"` tv_grab_au --output "${LISTINGS_FILE}" --days 7 # make sure the file is larger than 4k - otherwise there was an error in the data if [ `ls -sk "${LISTINGS_FILE}" | awk '{print $1;}'` -gt 4 ] ; then # fix the double escapes sed -i 's/\&/\&/g' "${LISTINGS_FILE}" echo Listing is good rm "${XMLTV_FILE}" ln -s "${LISTINGS_FILE}" "${XMLTV_FILE}" else echo Listing is bad fi freevo schedulefavorites
There are two basic tv_grab_au scripts available. One is written in perl. It can be installed on a Debian machine from repositories, just requiring configuration. An alternate script is written in python and is available from here http://www.cse.unsw.edu.au/~willu/xmltv/tv_grab_au_reg.html .