Skip to main content

JsonDecoder for ndjson

Project description

ndjson

Support for ndjson. Plain and simple.

https://img.shields.io/pypi/v/ndjson.svg https://img.shields.io/travis/rhgrant10/ndjson.svg https://img.shields.io/pypi/pyversions/ndjson https://img.shields.io/pypi/l/ndjson

Features

  • familiar interface

  • very small

  • no dependencies

  • works as advertised

  • has tests

Usage

ndjson exposes the same api as the builtin json and pickle packages.

import ndjson

# load from file-like objects
with open('data.ndjson') as f:
    data = ndjson.load(f)

# convert to and from objects
text = ndjson.dumps(data)
data = ndjson.loads(text)

# dump to file-like objects
with open('backup.ndjson', 'w') as f:
    ndjson.dump(items, f)

It contains JSONEncoder and JSONDecoder classes for easy use with other libraries, such as requests:

import ndjson
import requests

response = requests.get('https://example.com/api/data')
items = response.json(cls=ndjson.Decoder)

The library also packs reader and writer classes very similar to standard csv ones:

import ndjson

# Streaming lines from ndjson file:
with open('./posts.ndjson') as f:
    reader = ndjson.reader(f)

    for post in reader:
        print(post)

# Writing items to a ndjson file
with open('./posts.ndjson', 'w') as f:
    writer = ndjson.writer(f, ensure_ascii=False)

    for post in posts:
        writer.writerow(post)

Credits

This package was created with Cookiecutter and the audreyr/cookiecutter-pypackage project template.

History

0.3.1 (2020-02-24)

  • Fix a small spelling mistake

0.3.0 (2020-02-24)

  • Add ndjson.writer

  • Add ndjson.reader

0.2.0 (2019-08-01)

  • Add 3.7 support

  • Remove 3.4 support

0.1.0 (2018-05-17)

  • First release on PyPI.

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

ndjson-0.3.1.tar.gz (6.4 kB view details)

Uploaded Source

Built Distribution

ndjson-0.3.1-py2.py3-none-any.whl (5.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file ndjson-0.3.1.tar.gz.

File metadata

  • Download URL: ndjson-0.3.1.tar.gz
  • Upload date:
  • Size: 6.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.10.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.4

File hashes

Hashes for ndjson-0.3.1.tar.gz
Algorithm Hash digest
SHA256 bf9746cb6bb1cb53d172cda7f154c07c786d665ff28341e4e689b796b229e5d6
MD5 631b36ea929a48c00fd00e1b1f6162eb
BLAKE2b-256 b4d5209b6ca94566f9c94c0ec41cee1681c0a3b92a306a84a9b0fcd662088dc3

See more details on using hashes here.

File details

Details for the file ndjson-0.3.1-py2.py3-none-any.whl.

File metadata

  • Download URL: ndjson-0.3.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 5.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.10.0 pkginfo/1.5.0.1 requests/2.23.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.43.0 CPython/3.7.4

File hashes

Hashes for ndjson-0.3.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 839c22275e6baa3040077b83c005ac24199b94973309a8a1809be962c753a410
MD5 c810fd9313ef733f386fcef8a30ec7d1
BLAKE2b-256 70c904ba0056011ba96a58163ebfd666d8385300bd12da1afe661a5a147758d7

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