py3-ujson

Ultra fast JSON decoder and encoder written in C with Python bindings

https://github.com/ultrajson/ultrajson

Science Score: 36.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
    Links to: zenodo.org
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (12.8%) to scientific vocabulary

Keywords

c decoder encoder json python ujson ultrajson
Last synced: 6 months ago · JSON representation

Repository

Ultra fast JSON decoder and encoder written in C with Python bindings

Basic Info
Statistics
  • Stars: 4,443
  • Watchers: 88
  • Forks: 372
  • Open Issues: 29
  • Releases: 26
Topics
c decoder encoder json python ujson ultrajson
Created almost 15 years ago · Last pushed 6 months ago
Metadata Files
Readme License

README.md

UltraJSON

PyPI version Supported Python versions PyPI downloads GitHub Actions status codecov DOI Code style: Black

UltraJSON is an ultra fast JSON encoder and decoder written in pure C with bindings for Python 3.9+.

Install with pip:

sh python -m pip install ujson

Project status

[!WARNING] UltraJSON's architecture is fundamentally ill-suited to making changes without risk of introducing new security vulnerabilities. As a result, this library has been put into a maintenance-only mode. Support for new Python versions will be added and critical bugs and security issues will still be fixed but all other changes will be rejected. Users are encouraged to migrate to orjson which is both much faster and less likely to introduce a surprise buffer overflow vulnerability in the future.

Usage

May be used as a drop in replacement for most other JSON parsers for Python:

```pycon

import ujson ujson.dumps([{"key": "value"}, 81, True]) '[{"key":"value"},81,true]' ujson.loads("""[{"key": "value"}, 81, true]""") [{'key': 'value'}, 81, True] ```

Encoder options

encodehtmlchars

Used to enable special encoding of "unsafe" HTML characters into safer Unicode sequences. Default is False:

```pycon

ujson.dumps("