opml 0.5
Lightweight OPML parsing.
opml provides simple support for reading OPML files. OPML is an XML-based format for describing outlines and is often used as an interchange format for subscription lists. This package is intended as a light-weight, permissive parser. It does very little validation of the incoming OPML.
Installation
The Python OPML package and its dependencies may be installed using easy_install (recommended)
$ easy_install opml
or by using the standard distutils setup.py:
$ python setup.py install
If installing using setup.py, lxml will also need to be installed. easy_install will manage this for you.
Usage
Document Purpose
This document is intended to provide a set of literate tests for the opml package; it is not intended to provide thorough coverage of the OPML specification or semantics. See the OPML 2 Specification for details on OPML.
opml can parse OPML from a URI or from a local string. For example, to parse an example from the OPML validator:
>>> import opml >>> outline = opml.parse( ... 'http://hosting.opml.org/dave/validatorTests/clean/subscriptionList.opml')
Elements in the OPML header can be accessed as attributes:
>>> outline.title 'mySubscriptions.opml' >>> outline.ownerName 'Dave Winer' >>> outline.ownerEmail 'dave@scripting.com'
Items in an OPML outline are stored in <outline> elements; these are accessible via the standard Python sequence operators:
>>> len(outline) 13 >>> outline[0] <opml.OutlineElement object at ...>
An OutlineElement object exposes the attributes associated with the element as properties:
>>> outline[0].text 'CNET News.com' >>> outline[0].type 'rss'
outline elements may contain other outline elements:
>>> len(outline[0]) 0
When parsing a feed with nested items, the sub-items are accessible using the standard Python sequence operators:
>>> nested = \
... opml.parse('http://hosting.opml.org/dave/spec/placesLived.opml')
>>> len(nested[0])
6
>>> nested[0][0].text
'Boston'
>>> len(nested[0][0])
2
>>> nested[0][0][0].text
'Cambridge'
| File | Type | Py Version | Uploaded on | Size | # downloads |
|---|---|---|---|---|---|
| opml-0.5-py2.5.egg (md5) | Python Egg | 2.5 | 2008-02-13 21:07:16 | 5KB | 449 |
| opml-0.5.tar.gz (md5) | Source | 2008-02-13 21:07:17 | 4KB | 449 | |
- Author: Nathan R. Yergler <nathan at yergler net>
- Home Page: http://wiki.creativecommons.org/Python_OPML
- Keywords: xml opml
- License: MIT
- Package Index Owner: nathan
- DOAP record: opml-0.5.xml
Log in to rate this package.
