6.14. Générateur de flux RSS
6.14.1 RSS()
Karrigell fournit une classe,RSS()
, vous permettant de facilement générer des flux RSS 2.0.Utilisation de
RSS()
:
from k_rss import RSS
rss = RSS(parameters)
Les paramètres de
RSS()
sont nommés. En voici la liste :
title
(obligatoire)link
(obligatoire)description
(obligatoire)language
copyright
managingEditor
webMaster
pubDate
lastBuildDate
category
generator
docs
cloud
ttl
image
rating
skipHours
skipDays
6.14.2 AddItem()
Une fois le "channel" créé à l'aide deRSS()
, vous pouvez ajouter des éléments à l'aide de la
méthode AddItem()
.Utilisation de
AddItem()
:
rss.AddItem(parameters)
Les paramètres de
AddItem()
sont nommés. En voici la liste :
title
link
description
author
category
comments
enclosure
guid
pubDate
source
title
ou description
doit être passé en argument à AddItem()
.
6.14.3 Types des paramètres
Les paramètres deRSS()
et de AddItem()
peuvent être des types suivants :
- texte : une chaine de caractère ou une chaine unicode.
- date : datetime.datetime convertit en chaine de caractère en respectant le bon formatage. La "Timezone" est gérée (cf note).
- image : un dictionaire contenant les clés suivantes :
- url (obligatoire)
- title (obligatoire)
- link (obligatoire)
- width
- height
- description
6.14.4 Render() and RenderInFile()
Pour générer un flux RSS, vous pouvez utiliserRender()
or RenderInFile()
.
Render()
accepte un seul paramètre : l'encodage de sortie (optionnel,
l'encodage de sortie par défaut est iso-8859-1
).
Render()
retourne une chaine unicode correctement formattée.
RenderInfile()
accepte deux paramètres : un nom de fichier (obligatoire) ainsi que l'encodage de sortie (optionnel).
RenderInfile()
a le même fonctionnement que Render()
mais génère un fichier et ne retourne rien.
6.14.5 Exemple
from k_rss import RSS import datetime rss = RSS(title="Karrigell", description="Flexible Python web framework, with a clear and intuitive syntax.", link="http://www.karrigell.com", webMaster="quentel.pierre@wanadoo.fr (Pierre Quentel)", language="en", generator="Karrigell RSS generator", image={"url":"http://karrigell.sourceforge.net/images/karrigell_skeudenn.png", "title":"Karrigell", "link":"http://www.karrigell.com"} ) rss.AddItem (title='Last item', description='My most recent item.', pubDate = datetime.datetime.now()) rss.AddItem (title='First item', description='My first item.', pubDate = datetime.datetime(year=2009, month=3, day=16, hour=22, minute=34, second=17)) print rss.Render()
Dans cet exemple, un flux RSS est généré avec comme titre "Karrigell". Deux éléments sont ajoutés.