GithubHelp home page GithubHelp logo

feedparser's Introduction

Introduction

FeedParser is an NSXMLParser-based RSS/Atom feed parser for Cocoa. It is intended to parse well-formed RSS and Atom feeds on both the desktop and the iPhone.

Usage

The simplest way to use FeedParser is to simply add the FeedParser directory to your project. FeedParser also includes a static library target if you prefer to include it that way.

Design Goals

FeedParser was designed to parse valid RSS and Atom feeds, including support for extensions outside of the RSS or Atom namespaces. All parsed feeds MUST be well-formed, but the parser may or may not enforce validity.

Current State

As of this writing, FeedParser can parse a full valid RSS 2.0 feed, though it intentionally skips elements that I did not consider useful. The parser may be extended later to expose the values of those elements. FeedParser has only a limited understanding of Atom feeds. It can understand a handful of Atom elements embedded within an RSS feed, but it cannot understand a complete Atom feed. Full understanding of Atom feeds is one of the future goals of this project.

FeedParser requires that the entire feed must be a well-formed XML document, but it does not do any validity checking of individual elements.

Future Development

The goals for future development of FeedParser are the following:

  • Fully support Atom feeds

  • Be as lenient as possible. To this extent, parsing non-well-formed documents should be investigated. NSXMLParser is documented as aborting parsing upon encountering an error, but in practice it appears that, at least on Mac OS X 10.5, it actually can recover from errors. However, at the current time FeedParser explicitly aborts the parser when an error is encountered

  • Support the more common RSS/Atom extensions

  • Better error reporting

Naming Issues

The name FeedParser conflicts with RSS/Atom parsers for other languages. A new name unique name should be chosen that is available on Google Code for bug reporting purposes.

feedparser's People

Contributors

lilyball avatar jabley avatar

Watchers

James Cloos avatar Farooq Mulla avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.