Skip to main content

Extract YAML frontmatter from files and strings.

Project description

frontmatter

A simple Python package for parsing YAML Frontmatter from a text file or string. Written for Python 3, but should also work for Python 2.7.

Usage

from frontmatter import Frontmatter

# assuming 'testfile.md' exists
post = Frontmatter.read_file('testfile.md')

print(post['attributes'], "\n")  # Dictionary
print(post['body'], "\n")        # String
print(post['frontmatter'])       # String

The output would be:

{'foo': 'bar', 'num': 3, 'list': ['first', 'second', 'third']}

This is the actual post content
This is a second line

foo: bar
num: 3
list:
- first
- second
- third

In the above example, the contents of testfile.md is:

---
foo: bar
num: 3
list:
- first
- second
- third
---

This is the actual post content
This is a second line

LICENSE

ISC License

Copyright (c) 2018, Jonathan Beebe

Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.

Project details


Download files

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

Source Distribution

frontmatter-3.0.8.tar.gz (5.3 kB view details)

Uploaded Source

File details

Details for the file frontmatter-3.0.8.tar.gz.

File metadata

  • Download URL: frontmatter-3.0.8.tar.gz
  • Upload date:
  • Size: 5.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.0.0 CPython/3.12.2

File hashes

Hashes for frontmatter-3.0.8.tar.gz
Algorithm Hash digest
SHA256 d913619d20f607e03557d52a8bf9b249e0b3093c770c5213c0f1231d2c97fe73
MD5 ad092952d339fe4336acec20960776ce
BLAKE2b-256 8bde7425e1c97db39ca6615ccf89d8c3b47f2ee8dfdabb754fc99f925ee1a702

See more details on using hashes here.

Supported by

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