PyRSS2Gen :rss產生
:http://www.dalkescientific.com/Python/PyRSS2Gen-1.0.0.tar.gz
例子:
Java代碼
- import datetime
- import PyRSS2Gen
-
- rss = PyRSS2Gen.RSS2(
- title = "Andrew's PyRSS2Gen feed",
- link = "http://www.dalkescientific.com/Python/PyRSS2Gen.html",
- description = "The latest news about PyRSS2Gen, a "
- "Python library for generating RSS2 feeds",
-
- lastBuildDate = datetime.datetime.now(),
-
- items = [
- PyRSS2Gen.RSSItem(
- title = "PyRSS2Gen-0.0 released",
- link = "http://www.dalkescientific.com/news/030906-PyRSS2Gen.html",
- description = "Dalke Scientific today announced PyRSS2Gen-0.0, "
- "a library for generating RSS feeds for Python. ",
- guid = PyRSS2Gen.Guid("http://www.dalkescientific.com/news/"
- "030906-PyRSS2Gen.html"),
- pubDate = datetime.datetime(2003, 9, 6, 21, 31)),
- PyRSS2Gen.RSSItem(
- title = "Thoughts on RSS feeds for bioinformatics",
- link = "http://www.dalkescientific.com/writings/diary/"
- "archive/2003/09/06/RSS.html",
- description = "One of the reasons I wrote PyRSS2Gen was to "
- "experiment with RSS for data collection in "
- "bioinformatics. Last year I came across...",
- guid = PyRSS2Gen.Guid("http://www.dalkescientific.com/writings/"
- "diary/archive/2003/09/06/RSS.html"),
- pubDate = datetime.datetime(2003, 9, 6, 21, 49)),
- ])
-
- rss.write_xml(open("pyrss2gen.xml", "w"))
Universal Feed Parser rss解析
:http://feedparser.googlecode.com/files/feedparser-4.1.zip
Java代碼
- >>> import feedparser
- >>> d = feedparser.parse("http://feedparser.org/docs/examples/atom10.xml")
- >>> d['feed']['title'] # feed data is a dictionary
- u'Sample Feed'
- >>> d.feed.title # get values attr-style or dict-style
- u'Sample Feed'
- >>> d.channel.title # use RSS or Atom terminology anywhere
- u'Sample Feed'
- >>> d.feed.link # resolves relative links
- u'http://example.org/'
- >>> d.feed.subtitle # parses escaped HTML
- u'For documentation only'
- >>> d.channel.description # RSS terminology works here too
- u'For documentation only'
- >>> len(d['entries']) # entries are a list
- 1
- >>> d['entries'][0]['title'] # each entry is a dictionary
- u'First entry title'
- >>> d.entries[0].title # attr-style works here too
- u'First entry title'
- >>> d['items'][0].title # RSS terminology works here too
- u'First entry title'
- >>> e = d.entries[0]
- >>> e.link # easy access to alternate link
- u'http://example.org/entry/3'
- >>> e.links[1].rel # full access to all Atom links
- u'related'
- >>> e.links[0].href # resolves relative links here too
- u'http://example.org/entry/3'
- >>> e.author_detail.name # author data is a dictionary
- u'Mark Pilgrim'
- >>> e.updated_parsed # parses all date formats
- (2005, 11, 9, 11, 56, 34, 2, 313, 0)
- >>> e.content[0].value # sanitizes dangerous HTML
- u'
- Watch out for nasty tricks
- '
- >>> d.version # reports feed type and version
- u'atom10'
- >>> d.encoding # auto-detects character encoding
- u'utf-8'
- >>> d.headers.get('Content-type') # full access to all HTTP headers
- u'application/xml'