Skip to content

A JSON5 serializer and parser library for Python 3 written in Cython.

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE.Apache
MIT
LICENSE.MIT
Notifications You must be signed in to change notification settings

Kijewski/pyjson5

Repository files navigation

PyJSON5

A JSON5 serializer and parser library for Python 3 written in Cython.

Serializer

The serializer returns ASCII data that can safely be used in an HTML template. Apostrophes, ampersands, greater-than, and less-then signs are encoded as unicode escaped sequences. E.g. this snippet is safe for any and all input:

"<a onclick='alert(" + encode(data) + ")'>show message</a>"

Unless the input contains infinite or NaN values, the result will be valid JSON data.

Parser

All valid JSON5 1.0.0 and JSON data can be read, unless the nesting level is absurdly high.

Functions

You can find the full documentation online at https://pyjson5.readthedocs.io/en/latest/. Or simply call help(pyjson5). :-)

The library supplies load(s) and dump(s) functions, so you can use it as a drop-in replacement for Python's builtin json module, but you should use the functions encode_*() and decode_*() instead.

Compatibility

At least CPython 3.7 or a recent Pypy3 version is needed.

About

A JSON5 serializer and parser library for Python 3 written in Cython.

Topics

Resources

License

Apache-2.0, MIT licenses found

Licenses found

Apache-2.0
LICENSE.Apache
MIT
LICENSE.MIT

Stars

Watchers

Forks

Contributors 4

  •  
  •  
  •  
  •