Skip to content Skip to navigation

RSS from ezboard

« previous next »


I've been working on a project for the last while that has, as one aspect, an RSS aggregator to bring together news from a bunch of different related website - nothing earth-shaking there. Problem is one of the sources I want to aggregate is an ezboard forum. The fact that ezboard doesn't have RSS feeds, however, put a bit of a damper on that.

A bit of Google searching made it quite clear that I was not the first person to want to do this, and while I am all for not reinventing the wheel when possible pretty much all I could find were lots of "ZOMG!!1!! I needs RSS from ezboard. PLZ spoon feed me!" forum posts and very little of actual use. In reply to these there were a couple of links to a dead service at http://www.mikeshea.net with the requisite "is gone OHNOES!!1!" replies. Eventually I found a post where someone rather usefully posted a link to the source on Mike Shea's site and I gave it a try.

While there was some wonderful Perl-y goodness to the script, particularly it's ability to deal with a whole bunch of other bulletin board services, the RSS generated was, to put it mildly, badly formed - the worst part for my application was a lack of pubDate tags so the items wouldn't slot in chronologically with the other feeds in my aggregator. Running the script also added about 20 lines of warnings in the error log every time it was executed. The script was all at once overkill and not very useful to me. But not completely useless. I retained the caching and some of the ezboard-specific screen scraping when I rewrote it, so credit where credit is due.

My script is entirely single-purpose, unlike Mike Shea's script it only works with ezboard forums, that's the downside. The upside is what it returns

  1. is the right content type ('text/xml')
  2. includes a lastBuildDate
  3. includes a pubDate for each item
  4. includes sticky threads, yet still sorts the thread items in the correct descending order by date/time, and, of course
  5. runs without warnings or errors

How to use:

For the cache you'll need a subdirectory under the location of the script that is writable by your http server process.

The script expects three parameters:

  1. title - arbitrary text describing the feed. This is what is going to end up inside the <title> tag of the RSS feed. Don't forget to URL encode the string.
  2. url - the full URL to the forum you want to make a feed from, URL encoded, of course, and
  3. description - arbitrary text  describing the feed, this will end up inside the <description> tag.

Example:

http://yourservername/andpath/ezrss.pl?title=Arbitrary+Title+for+Feed&url=http%3A%2F%2Fpxxx.ezboard.com%2Fmyforumpath&description=Arbitrary+Description+of+the+Specific+Forum

Source code: ezrss.txt

Oringinal post: http://mbarrick.livejournal.com/830958.html