Lightweight OPML parsing.
Project description
- Date:
- 2007-03-20 08:30:21 -0700 (Tue, 20 Mar 2007)
- Version:
- 5612
- Organization:
- Creative Commons
- Copyright:
- 2008, Nathan R. Yergler, Creative Commons; licensed to the public under the MIT license.
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
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
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
Algorithm | Hash digest | |
---|---|---|
SHA256 | db1eef2a251b8af33e2eabb62baf922006dbd8c66c742931090e331a0362a770 |
|
MD5 | 2574a47669660210cba4ad52a2ba7635 |
|
BLAKE2b-256 | f1957234e96012a95cd0804d794ad6db43e3c613689c3201f1fc62c4a5b2299e |
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: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 9d92806e32068ae5eb2d8826b54d3eeaad1d57b9d6c9cbdc28b57369f85c1222 |
|
MD5 | 34e81bf1972ef2cc92ec9ccdb0fc1c10 |
|
BLAKE2b-256 | 803b7c1b2f436eab5c985b3071f97e28f70c726f6029cf06b3cf96df97f60198 |