I actually have an RSS parser I wrote for iOS about a month ago, but in the interest of having you learn I'll just point out some classes I used to build mine (if you need help while putting it together, ask of course, but show some evidence that you tried first, please.)
I made a subclass of
NSOperation that conformed to
NSXMLParserDelegate. The main thing it did was kick off an
NSXMLParser with a URL. As the parser returned elements, it scanned them. If it found an
element with the
name "link" and an
attribute "type" that was equal to "application/rss+xml", it would kick off another instance of itself using the
attribute "href".
It would also look for
elements with the names of
title,
description,
pubDate,
item,
rss, or
channel. It would look for both the start and end of each tag.
If it ever found
characters between those tags, it would add them to an
NSMutableString which it would "detag" (that's my own term now) and pass on to be handled elsewhere, and then empty the string variable.
By "detag", I mean that it would scan the string for HTML tags and remove them. Personally, I did it character by character and keeping track of how many "tags deep" my program was. It would replace tag substrings with empty strings (the reason being that I wanted to place them in UILabels. No idea if you'll need a similar detagger in your case.)
In the detag process, I also scanned for escape sequences and replaced them with the appropriate characters. To find those, I looked for instances of "&#" and then skipped to the ";". I would then parse the number in between, interpret it as a char, and replace the escape sequence with it.
Depending on how you're making this work, you might want to have a
NSOperationQueue. In my app, I used it to queue up multiple search tasks. As I found feeds, I stuck them in an NSMutableArray.
I think I've described every portion of how my code for finding RSS feeds works now in some detail.
If you need to know more about the RSS tags, I suggest looking here (it is, after all, how I figured out what tags to look for):
http://cyber.law.harvard.edu/rss/rss.html