Skip to main content
Date:
2007-03-20 08:30:21 -0700 (Tue, 20 Mar 2007)
Version:
5612
Author:

Nathan R. Yergler <nathan@yergler.net>

Organization:
Creative Commons

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

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'

Download

Metadata

Release files for opml 0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for opml 0.5
File Size Uploaded
opml-0.5.tar.gz 4.9 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for opml 0.5
File Interpreter ABI Platform
opml-0.5-py2.5.egg Legacy Egg format - - Details

Total release size: 10.3 kB

Release files / opml-0.5.tar.gz

Download URL opml-0.5.tar.gz
Size 4.9 kB
Tags Source
SHA-256 checksum
How to use checksums
db1eef2a251b8af33e2eabb62baf922006dbd8c66c742931090e331a0362a770
BLAKE2b-256 checksum
How to use checksums
f1957234e96012a95cd0804d794ad6db43e3c613689c3201f1fc62c4a5b2299e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / opml-0.5-py2.5.egg

Download URL opml-0.5-py2.5.egg
Size 5.3 kB
Tags Egg
SHA-256 checksum
How to use checksums
9d92806e32068ae5eb2d8826b54d3eeaad1d57b9d6c9cbdc28b57369f85c1222
BLAKE2b-256 checksum
How to use checksums
803b7c1b2f436eab5c985b3071f97e28f70c726f6029cf06b3cf96df97f60198
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.5 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page