tv_grab_au_regUnfortunately, do to personal time constraints, I am no longer supporting this grabber. The tvguide.org.au data interface changed in March 2008 and I made a quick hack for the new format. This unsupported grabber only just works. The IceTV part of the grabber is still fine. I suggest that people choose another grabber from my list of other tv_grab_au grabbers.
This simple grabber will gather data from either or both of two different providers, one free and one commercial: tvguide.org.au and IceTV.com.au. The provider can be selected on a channel by channel basis, and the grabber allows re-writing of the XMLTV IDs so that it is trivial to swap between data providers. If you have any bug reports for this grabber, please let me know so that I can fix it.
This grabber used to be known as tv_grab_au_tuhs, but as it is no longer tvguide.org.au specific, I thought I should rename it to stop using the tvguide server name.
Users of the TiVo digital video recorder in Australia, like other PVR users, need electronic program guide data. They have organised the Australian Community-based TV guide (with a mailing list and the data itself) to try and bring all the different community projects needing guide data together. This guide data is available under a creative commons license, but you'll need to register to use the minnie.tuhs.org server. Their system serves both XMLTV and TiVo format data, but it only serves it as individual channel/day combinations.
For a brief time in April 2007, the tvguide.org.au domain name expired. Other names for the same service were introduced, such as tvguide.oztivo.net. All of these redirect to minnie.tuhs.org. Internally the grabber uses the minnie.tuhs.org name and so should continue to function normally.
IceTV is a commercial outfit that sells TV guide data for a small monthly fee. Their guide data is updated more regularly than the community-based guide, but costs money and covers fewer channels.
This grabber requires some configuration to work.
The first thing you need to do is register with one or both of the data providers. You should complete the providers' setup procedure, including letting the provider know your station preferences, changing your preferred download format to XMLTV, etc.
Then you should download the python file itself: tv_grab_au_reg.
Firstly, run the grabber with the --configure option. This will create a template config file: ~/.xmltv/tv_grab_au_reg.xml.
Having created the config file, you'll need to edit it for your situation. Change the username and password from the placeholder entries for each data provider you are registered with - delete the login tag for any provider you do not wish to use.
Now you can run tv_grab_au_reg and have it spit out XMLTV data for you.
If you wish to filter out certain channels, get channel tags for the tvguide data (often not needed), change the XMLTV IDs of any channels or change the timezone of any channels then you'll need to edit the list of channels in the config file. Instructions are in the default configuration file.
Thanks to John Saunders for the original version of these:
python installed. By default the script uses the env program to find python in your path. If you don't have env, or it can't find your python installation, then edit the first line of the script to point to the correct location. You can check the location of python using the which python command.tv_grab_au_reg in /usr/local/binchmod +x tv_grab_au_reg/usr/local/bin/tv_grab_au to tv_grab_au_reg with ln -s /usr/local/bin/tv_grab_au_reg /usr/local/bin/tv_grab_au (and check that you don't have another tv_grab_au installed somewhere: which -a tv_grab_au).mythtv-setup and configure an input source
to use tv_grab_au.mythtv-setup
will run tv_grab_au --configure --config-file ~mythtv/.mythtv/<InputSourceName>.xmltv and create a default config file for you. (Note: Some grabbers require you ALT-TAB here and enter some configuration info, however tv_grab_au_reg doesn't - you have to edit the config file later)mythtv-setup. The "Auto" setting is usually the right setting (the "None" setting will make MythTV interpret the timezones as local - Unless you are actually in the UTC timezone, this is not what you want).mythtv-setup and exit.~mythtv/.mythtv/<InputSourceName>.xmltv
to include the channels you want, username(s) and
password(s).mythbackend.mythfilldatabase and wait as it takes some time. Note, if you're using MythTV 0.18.X or earlier you'll want to use the --force-explicit-timezone option for tv_grab_au_reg. You can do this by passing --graboptions --force-explicit-timezone to mythfilldatabase.mythfilldatabase is run at regular intervals.Some people have had problems with the python version of the script under Windows. I haven't tested under windows much, but I can relay a few problems people have pointed out to me:
--config-file option to specify another config file name.I made a .NET version of the script which might help -- I'm not really a .NET programmer and this is a hassle to maintain. It should work, but isn't as up to date as the python version. The source code for the new script is in a language called Boo. Once Boo supports generics I may update this script more frequently.
You'll need three things to make the script work:
The boo version of the script differs from the original Python version slightly. The config file format is the same, but its default location is different. The command line option parser is similar, but slightly different. Also, the XML handling is slightly different.
Update: 21 January 2007. Add --description option so that tv_find_grabbers will find this grabber.
Update: 13 January 2007. Add preferredmethod capability to tell systems to download all data at once for increased efficiency.
Update: 8 January 2007. Update the python grabber to handle the XMLTV capabilities option. This will be needed by the next version of MythTV.
Update: 18 September 2006. Update python grabber so that it uses gzip compression if the server handles it. Also used the version string as the http user agent. Note that the previous update broke grabbing by individual days - haven't fixed that yet as it isn't a high priority for most people.
Update: 8 September 2006. Update grabber so that it requests all channels from the Aus TV Guide in one request, not individually by day/channel. Also fix the appearance of '--' in the default config script, which was causing problems. This update changes the meaning of the config file slightly. To get back to the old behaviour you need to add a filter="true" attribute to your login tags in the config file -- this is not necessary for most people. I have only updated the Python version of the script, not the Boo version.
Update: 4 August 2006. Update grabber for new TV guide URL. Add support for server messages.
Update: 1 August 2006. Add some error handling and debugging code.
Update: 2 July 2006. Small bug fix. Also introduce new boo / Mono version of script
Update: 19 March 2006. Modify the channel tag generation code so it outputs the channel nodes given to us by IceTV (for IceTV channels). This allows the grabber to report the DVB transport IDs, service IDs, etc. provided by IceTV.
Update: 18Feb2006. Indulis Bernsteins gave me a patch which allows the timezone markers to be changed for individual channels. I also refactored things a little bit to make more code common between the two providers.
Update: 17Jan2006. I added the ability to get data from IceTV as well as tvguide.org.au.
Update: 11Nov2005. I added some extra checking to help windows users, re-wrote the parsing, and changed the config file to XML (and a new default filename). You will need to update your config file to the new format. Have fun.
XMLTV is an XML specification for television guide data. It is used by a number of projects, including the open source home theatre software MythTV (also see the MythTV wiki).
This page decribes a python program, or script, that gets guide data from the Australian Community-based TV Guide and returns it in XMLTV format so it can be used by your PVR. I have a list of other XMLTV sources in Australia.