pragmatist
Patrick Joyce

September 3, 2007

MLS Highlights Script for XBMC

At my house we have an XBox set up to run XBox Media Center hooked up to my 42” HDTV. It’s pretty sweet.

One thing that is really cool about XBMC is that it lets you can extend it by writing scripts in Python.

Last week I got tired of fighting with decided to take a stab at writing a script to watch them on the TV. I based the code off of the xNHL script by episcopus. It took me about 4 hours to get the script working, most of which was spent getting the screen scraping to work right.

It was my first real Python coding, and I’m pretty sure that the xNHL script I based it on wasn’t a great example of good Python coding. I’d like to clean it up, improve the UI, and add some unit tests, but I don’t see that happening any time soon so I decided to just put it out there now. I’ve submitted the script to XBMCScripts.com and will post when it is accepted. In the meantime, you can get the code from the Google Code project I set up.

The other big thing I’d really like to do is set it up so you can watch full games if you’ve subscribed to MLSLIve.tv Season Ticket. Unfortunately, I’m not sure that I can get the authentication for the streams to work on the XBox.

Install Instructions:

  1. Download xMLS.zip
  2. Extract into a directory called xMLS under the scripts directory on your XBMC

Screenshots:

Launching xMLS from the Scripts Directory
Launching xMLS from the Scripts Directory

Loading the games for September
Loading the games for September

The MLS games for September.
The MLS games for September. Past games show the score. Future games the time. Games with the little icon have highlights.

Loading the highlights for the DC United - FC Dallas game.
Loading the highlights for the DC United - FC Dallas game.

The video quality isn't great, but it works.
The video quality isn’t great, but it works.

Benny Olsen celebrating the first of his two goals
Benny Olsen celebrating the first of his two goals. I sure do wish I could grow a beard like him ;)

Cristian Gomez lining up for his goal. It was a banger.
Cristian Gomez lining up for his goal. It was a banger.

Fred celebrating the final goal in the 4-0 drumming of the hoops.
Fred celebrating the final goal in the 4-0 drumming of the hoops.

More Articles on Software & Product Development

Agile With a Lowercase “a”
”Agile“ is an adjective. It is not a noun. It isn’t something you do, it is something you are.
How Do You End Up With A Great Product A Year From Now?
Nail the next two weeks. 26 times in a row.
Build it Twice
Resist the urge to abstract until you've learned what is general to a class of problems and what is specific to each problem.