Atom Syndication
Warning
Deprecated since version 0.15: This will be removed in version 1.0. Use a dedicated feed library instead.
werkzeug.contrib.atom
This module provides a class called AtomFeed
which can be used to generate feeds in the Atom syndication format (see RFC 4287).
Example:
def atom_feed(request): feed = AtomFeed("My Blog", feed_url=request.url, url=request.host_url, subtitle="My example blog for a feed test.") for post in Post.query.limit(10).all(): feed.add(post.title, post.body, content_type='html', author=post.author, url=post.url, id=post.uid, updated=post.last_update, published=post.pub_date) return feed.get_response()
-
class werkzeug.contrib.atom.AtomFeed(title=None, entries=None, **kwargs)
-
A helper class that creates Atom feeds.
Parameters: - title – the title of the feed. Required.
-
title_type – the type attribute for the title element. One of
'html'
,'text'
or'xhtml'
. - url – the url for the feed (not the url of the feed)
-
id – a globally unique id for the feed. Must be an URI. If not present the
feed_url
is used, but one of both is required. -
updated – the time the feed was modified the last time. Must be a
datetime.datetime
object. If not present the latest entry’supdated
is used. Treated as UTC if naive datetime. - feed_url – the URL to the feed. Should be the URL that was requested.
- author – the author of the feed. Must be either a string (the name) or a dict with name (required) and uri or email (both optional). Can be a list of (may be mixed, too) strings and dicts, too, if there are multiple authors. Required if not every entry has an author element.
- icon – an icon for the feed.
- logo – a logo for the feed.
- rights – copyright information for the feed.
-
rights_type – the type attribute for the rights element. One of
'html'
,'text'
or'xhtml'
. Default is'text'
. - subtitle – a short description of the feed.
-
subtitle_type – the type attribute for the subtitle element. One of
'text'
,'html'
,'text'
or'xhtml'
. Default is'text'
. - links – additional links. Must be a list of dictionaries with href (required) and rel, type, hreflang, title, length (all optional)
-
generator – the software that generated this feed. This must be a tuple in the form
(name, url, version)
. If you don’t want to specify one of them, set the item toNone
. -
entries – a list with the entries for the feed. Entries can also be added later with
add()
.
For more information on the elements see http://www.atomenabled.org/developers/syndication/
Everywhere where a list is demanded, any iterable can be used.
-
add(*args, **kwargs)
-
Add a new entry to the feed. This function can either be called with a
FeedEntry
or some keyword and positional arguments that are forwarded to theFeedEntry
constructor.
-
generate()
-
Return a generator that yields pieces of XML.
-
get_response()
-
Return a response object for the feed.
-
to_string()
-
Convert the feed into a string.
-
class werkzeug.contrib.atom.FeedEntry(title=None, content=None, feed_url=None, **kwargs)
-
Represents a single entry in a feed.
Parameters: - title – the title of the entry. Required.
-
title_type – the type attribute for the title element. One of
'html'
,'text'
or'xhtml'
. - content – the content of the entry.
-
content_type – the type attribute for the content element. One of
'html'
,'text'
or'xhtml'
. - summary – a summary of the entry’s content.
-
summary_type – the type attribute for the summary element. One of
'html'
,'text'
or'xhtml'
. - url – the url for the entry.
- id – a globally unique id for the entry. Must be an URI. If not present the URL is used, but one of both is required.
-
updated – the time the entry was modified the last time. Must be a
datetime.datetime
object. Treated as UTC if naive datetime. Required. - author – the author of the entry. Must be either a string (the name) or a dict with name (required) and uri or email (both optional). Can be a list of (may be mixed, too) strings and dicts, too, if there are multiple authors. Required if the feed does not have an author element.
-
published – the time the entry was initially published. Must be a
datetime.datetime
object. Treated as UTC if naive datetime. - rights – copyright information for the entry.
-
rights_type – the type attribute for the rights element. One of
'html'
,'text'
or'xhtml'
. Default is'text'
. - links – additional links. Must be a list of dictionaries with href (required) and rel, type, hreflang, title, length (all optional)
- categories – categories for the entry. Must be a list of dictionaries with term (required), scheme and label (all optional)
- xml_base – The xml base (url) for this feed item. If not provided it will default to the item url.
For more information on the elements see http://www.atomenabled.org/developers/syndication/
Everywhere where a list is demanded, any iterable can be used.
© 2007–2020 Pallets
Licensed under the BSD 3-clause License.
https://werkzeug.palletsprojects.com/en/0.16.x/contrib/atom/