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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

opml-0.5.tar.gz (4.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

opml-0.5-py2.5.egg (5.3 kB view details)

Uploaded Egg

File details

Details for the file opml-0.5.tar.gz.

File metadata

  • Download URL: opml-0.5.tar.gz
  • Upload date:
  • Size: 4.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for opml-0.5.tar.gz
Algorithm Hash digest
SHA256 db1eef2a251b8af33e2eabb62baf922006dbd8c66c742931090e331a0362a770
MD5 2574a47669660210cba4ad52a2ba7635
BLAKE2b-256 f1957234e96012a95cd0804d794ad6db43e3c613689c3201f1fc62c4a5b2299e

See more details on using hashes here.

File details

Details for the file opml-0.5-py2.5.egg.

File metadata

  • Download URL: opml-0.5-py2.5.egg
  • Upload date:
  • Size: 5.3 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for opml-0.5-py2.5.egg
Algorithm Hash digest
SHA256 9d92806e32068ae5eb2d8826b54d3eeaad1d57b9d6c9cbdc28b57369f85c1222
MD5 34e81bf1972ef2cc92ec9ccdb0fc1c10
BLAKE2b-256 803b7c1b2f436eab5c985b3071f97e28f70c726f6029cf06b3cf96df97f60198

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

0.5 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page