The EffNews Project: Building an RSS Newsreader
September 2002 | Fredrik Lundh
“The tiny diamond-tipped pen shivered and twitched like one insane, and it seemed to Pugg that any minute now he would learn the most fabulous, unheard-of-things, things that would open up to him the Ultimate Mystery of Being, so he greedily read everything that flew out from under the diamond nib… the sizes of bedroom slippers available on the continent of Cob, with pompons and without… And the average width of the fontanel in indigenous step infants… and the inaugural catcalls of the Duke of Zilch, and six ways to cook cream of wheat… and the names of all the citizens of Foofaraw Junction beginning with the letter M, and the results of a poll of opinions on the taste of beer mixed with mushroom syrup…”— The Cyberiad, by Stanislaw Lem
News 2003-01-06: A prebuilt (and very much enhanced) version for Windows is now available, as part of the effbot.exe project.
Introducing the EffNews Project
This effbot.org project aims to build a simple RSS-based newsreader (aka “aggregator”) with a graphical user interface front-end, similar to applications like Headline Viewer and NetNewsWire. The reader will be based on standard Python cross-platform tools, which means that it will run on Windows, Unix (including Linux), and hopefully also Macintosh.
The RSS file format is an XML-based file format that provides a “site summary”, that is, a brief summary of information published on a web site. It’s usually used to provide a machine readable version of the contents on a news site or a weblog.
The “effnews” application will consist of the following main parts:
- an RSS download manager, that grabs RSS files from remote sites and stores them in a database
- RSS parsers for various RSS formats (0.9x, 1.0, 2.0, …).
- a two-panel display frontend, which shows RSS sources (channels), news headers, and news item summaries
The development will be documented in a series of articles here on effbot.org:
- Part 1. Fetching RSS Files
- Part 2. Fetching and Parsing RSS Files
- Part 3. Displaying RSS Files
- Part 4. Parsing More RSS Files
- Part 5. Odds and Ends (In Progress)
- Part 6. Using the ElementTree Module to Parse RSS Files (In Progress)
- Addendas, Frequently Asked Questions, and Other Assorted Notes
- Using Channel Providers Outside the effbot.exe/effnews Application
- effbot.exe/effnews: A prebuilt version for Windows
New articles will appear when they’re done, or something. Watch online.effbot.org for updates.
“And it grew dark before his hundred eyes, and he cried out in a mighty voice that he’d had enough, but Information had so swathed and swaddled him in its three hundred thousand tangled paper miles that he couldn’t move and had to read on about how Kipling would have written the beginning to his second Jungle Book if he had had indigestion just then, and what thoughts come to unmarried whales… and why we don’t capitalize paris in the plaster of paris.”