Skip to main content

mf2py

Build Status

Can I Use Python 3?

Python parser for microformats 2.

Current status: Full-featured and mostly stable. Implements the full mf2 spec, including backward compatibility with microformats1.

Documentation, code tidying and so on is rather lacking.

License: MIT

Install

pip install mf2py

Usage

Import the parser using

import mf2py

Parse a file containing the content

with open('file/content.html','r') as file:
    obj = mf2py.parse(doc=file)

Parse string containing content

content = '<article class="h-entry"><h1 class="p-name">Hello</h1></article>'
obj = mf2py.parse(doc=content)

Parse content from a URL

obj = mf2py.parse(url="http://tommorris.org/")

parse is a convenience method that actually delegates to mf2py.Parser to do the real work. More sophisticated behaviors are available by invoking the object directly.

Get parsed microformat in a variety of formats

p = mf2py.Parser(...)
p.to_dict()  # returns a python dictionary
p.to_json()  # returns a JSON string

Filter by microformat type

p.to_dict(filter_by_type="h-entry")
p.to_json(filter_by_type="h-entry")

Experimental features

  • pass the optional argument img_with_alt=True to either the Parser object or to the parse method to enable parsing of the alt attribute of <img> tags according to issue: image alt text is lost during parsing. By default this is False to be backwards compatible.

FAQ

  • I passed mf2py.parse() a BeautifulSoup document, and it got modified!

Yes, mf2py currently does that. We're working on preventing it! Hopefully soon.

Frontends

A basic web interface for mf2py and mf2util is available at mf2py-web.

A hosted live version can be found at python.microformats.io.

Contributions

We welcome contributions and bug reports via Github, and on the microformats wiki.

We try to follow the IndieWebCamp code of conduct. Please be respectful of other contributors, and forge a spirit of positive co-operation without discrimination or disrespect.

Download files

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

Source Distribution

mf2py-1.1.2.tar.gz (25.1 kB view details)

Uploaded Source

File details

Details for the file mf2py-1.1.2.tar.gz.

File metadata

  • Download URL: mf2py-1.1.2.tar.gz
  • Upload date:
  • Size: 25.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.11.0 pkginfo/1.4.2 requests/2.18.4 setuptools/39.0.1 requests-toolbelt/0.8.0 tqdm/4.19.8 CPython/2.7.10

File hashes

Hashes for mf2py-1.1.2.tar.gz
Algorithm Hash digest
SHA256 84f1f8f2ff3f1deb1c30be497e7ccd805452996a662fd4a77f09e0105bede2c9
MD5 eed22c3d6cc18438c05c3aeb7c7c99d4
BLAKE2b-256 fe09116b5b42f5c8cbb1cc43408be9df12fc2bf9fc408dfc9b20311ef4ffbfec

See more details on using hashes here.

Supported by

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