I spent the past few days finally getting familiar with Python and built a small text-input/XML-RPC based weblog client. Like Marsedit, only no GUI, fewer features, and free.
It currently supports Movable Type, WordPress and Livejournal based weblogs. It may work with other weblogs that support the original blogger and/or metaweblog API. You’ll need an external terminal editor (emacs, vi, pico, etc), and there’s optional support for a spellchecker.
Configuration instructions are included at the top of the file, and I whipped up a short screencast that covers the basics if you’re having trouble. Apologies for the less than stellar video/audio quality, but the price of free is crap.
Direct Link (Yahoo)
The application itself is one of your classic, “build it wrong the first time, build it right the second time now that you understand the problem”, without building it right the second time. The two biggest assumptions i made that came back to bite me were
- The various weblog APIs each supported the same basic methods. Turns out, for starters, Metaweblog doesn’t have a method for grabbing a list of available weblogs.
- That dealing with the old blogger’s native lack of a “title” wouldn’t be a big deal. It was, and there’s much hackery involved surrounding this.
I think the code itself also shows me traversing the python learning curve as I got more comfortable/knowledgeable with python’s capabilities and best practices. There’s a ton I’d do differently if I was going to go back and “do things right”, but this was primarily a distraction/learning opportunity that accidentally produced something I thought others might find useful.
That said, comments on bugs, better ways to do things, and anything else are more than welcome. The best learning experiences never stop.