Skip to main content

Iterative JSON parser with a standard Python iterator interface

Project description

https://travis-ci.com/ICRAR/ijson.svg?branch=master https://ci.appveyor.com/api/projects/status/32wiho6ojw3eakp8/branch/master?svg=true https://coveralls.io/repos/github/ICRAR/ijson/badge.svg?branch=master https://badge.fury.io/py/ijson.svg https://img.shields.io/pypi/pyversions/ijson.svg https://img.shields.io/pypi/dd/ijson.svg https://img.shields.io/pypi/dw/ijson.svg https://img.shields.io/pypi/dm/ijson.svg

ijson

Ijson is an iterative JSON parser with standard Python iterator interfaces.

Usage

All usage example will be using a JSON document describing geographical objects:

{
  "earth": {
    "europe": [
      {"name": "Paris", "type": "city", "info": { ... }},
      {"name": "Thames", "type": "river", "info": { ... }},
      // ...
    ],
    "america": [
      {"name": "Texas", "type": "state", "info": { ... }},
      // ...
    ]
  }
}

High-level interfaces

Most common usage is having ijson yield native Python objects out of a JSON stream located under a prefix. Here’s how to process all European cities:

import ijson

f = urlopen('http://.../')
objects = ijson.items(f, 'earth.europe.item')
cities = (o for o in objects if o['type'] == 'city')
for city in cities:
    do_something_with(city)

For how to build a prefix see the Prefix section below.

Other times it might be useful to iterate over object members rather than objects themselves (e.g., when objects are too big). In that case one can use the kvitems functions instead:

import ijson

f = urlopen('http://.../')
european_places = ijson.kvitems(f, 'earth.europe.item')
names = (v for k, v in european_places if k == 'name')
for name in names:
    do_something_with(name)

Lower-level interfaces

Sometimes when dealing with a particularly large JSON payload it may worth to not even construct individual Python objects and react on individual events immediately producing some result:

import ijson

parser = ijson.parse(urlopen('http://.../'))
stream.write('<geo>')
for prefix, event, value in parser:
    if (prefix, event) == ('earth', 'map_key'):
        stream.write('<%s>' % value)
        continent = value
    elif prefix.endswith('.name'):
        stream.write('<object name="%s"/>' % value)
    elif (prefix, event) == ('earth.%s' % continent, 'end_map'):
        stream.write('</%s>' % continent)
stream.write('</geo>')

Even more bare-bones is the ability to react on individual events without even calculating a prefix:

import ijson

events = ijson.basic_parse(urlopen('http://.../'))
num_names = sum(1 for event, value in events
                if event == 'map_key' and value == 'name')

asyncio support

In python 3.5+ all of the methods above have an *_async counterpart that works on file-like asynchronous objects, and that can be iterated asynchronously. In other words, something like this:

import asyncio
import ijson

async def run():
   f = await async_urlopen('http://..../')
   async for object in ijson.items_async(f, 'earth.europe.item'):
      if object['type'] == 'city':
         do_something_with(city)
asyncio.run(run())

Push interfaces

All examples above use a file-like object as the data input (both the normal case, and for asyncio support), and hence are “pull” interfaces, with the library reading data as necessary. If for whatever reason it’s not possible to use such method, you can still push data through yet a different interface: coroutines. Coroutines effectively allow users to send data to them at any point in time, with a final target coroutine-like object receiving the results.

In the following example the user is doing the reading instead of letting the library do it:

import ijson

@ijson.coroutine
def print_cities():
   while True:
      obj = (yield)
      if obj['type'] != 'city':
         continue
      print(obj)

coro = ijson.items_coro(print_cities(), 'earth.europe.item')
f = urlopen('http://.../')
chunk = f.read(buf_size)
while chunk:
   coro.send(chunk)
   chunk = f.read()
coro.close()

All four ijson iterators have a *_coro counterpart that work by pushing data into them. Instead of receiving a file-like object and option buffer size as arguments, they receive a single target argument, which should be a coroutine-like object (anything implementing a send method) through which results will be published.

An alternative to providing a coroutine is to use ijson.sendable_list to accumulate results, providing the list is cleared after each parsing iteration, like this:

import ijson

events = ijson.sendable_list()
coro = ijson.items_coro(events, 'earth.europe.item')
f = urlopen('http://.../')
chunk = f.read(buf_size)
while chunk:
   coro.send(chunk)
   process_accumulated_events(events)
   del events[:]
coro.close()
process_accumulated_events(events)

Options

Additional options are supported by all ijson functions to give users more fine-grained control over certain operations:

  • The multiple_values option (defaults to False) controls whether multiple top-level values are supported. JSON content should contain a single top-level value (see the JSON Grammar). However there are plenty of JSON files out in the wild that contain multiple top-level values, often separated by newlines. By default ijson will fail to process these with a parse error: trailing garbage error unless multiple_values=True is specified.

  • Similarly the allow_comments option (defaults to False) controls whether C-style comments (e.g., /* a comment */), which are not supported by the JSON standard, are allowed in the content or not.

  • For functions taking a file-like object, and additional buf_size option (defaults to 65536 or 64KB) specifies the amount of bytes the library should attempt to read each time.

  • The items and kvitems functions, and all their variants, have an optional map_type argument (defaults to dict) used to construct objects from the JSON stream. This should be a dict-like type supporting item assignment.

Events

When using the lower-level ijson.parse function, three-element tuples are generated containing a prefix, an event name, and a value. Events will be one of the following:

  • start_map and end_map indicate the beginning and end of a JSON object, respectively. They carry a None as their value.

  • start_array and end_array indicate the beginning and end of a JSON array, respectively. They also carry a None as their value.

  • map_key indicates the name of a field in a JSON object. Its associated value is the name itself.

  • null, boolean, integer, double, number and string all indicate actual content, which is stored in the associated value.

Prefix

A prefix represents the context within a JSON document where an event originates at. It works as follows:

  • It starts as an empty string.

  • A <name> part is appended when the parser starts parsing the contents of a JSON object member called name, and removed once the content finishes.

  • A literal item part is appended when the parser is parsing elements of a JSON array, and removed when the array ends.

  • Parts are separated by ..

When using the ijson.items function, the prefix works as the selection for which objects should be automatically built and returned by ijson.

Backends

Ijson provides several implementations of the actual parsing in the form of backends located in ijson/backends:

  • yajl2_c: a C extension using YAJL 2.x. This is the fastest, but might require a compiler and the YAJL development files to be present when installing this package. Binary wheel distributions exist for major platforms/architectures to spare users from having to compile the package.

  • yajl2_cffi: wrapper around YAJL 2.x using CFFI.

  • yajl2: wrapper around YAJL 2.x using ctypes, for when you can’t use CFFI for some reason.

  • yajl: deprecated YAJL 1.x + ctypes wrapper, for even older systems.

  • python: pure Python parser, good to use with PyPy

You can import a specific backend and use it in the same way as the top level library:

import ijson.backends.yajl2_cffi as ijson

for item in ijson.items(...):
    # ...

Importing the top level library as import ijson uses the first available backend in the same order of the list above. Its name is recorded under ijson.backend.

Acknowledgements

ijson was originally developed and actively maintained until 2016 by Ivan Sagalaev. In 2019 he handed over the maintenance of the project and the PyPI ownership.

Python parser in ijson is relatively simple thanks to Douglas Crockford who invented a strict, easy to parse syntax.

The YAJL library by Lloyd Hilaiel is the most popular and efficient way to parse JSON in an iterative fashion.

Ijson was inspired by yajl-py wrapper by Hatem Nassrat. Though ijson borrows almost nothing from the actual yajl-py code it was used as an example of integration with yajl using ctypes.

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

ijson-3.0.tar.gz (43.3 kB view details)

Uploaded Source

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

ijson-3.0-cp38-cp38-win_amd64.whl (44.2 kB view details)

Uploaded CPython 3.8Windows x86-64

ijson-3.0-cp38-cp38-win32.whl (41.7 kB view details)

Uploaded CPython 3.8Windows x86

ijson-3.0-cp38-cp38-manylinux1_x86_64.whl (99.6 kB view details)

Uploaded CPython 3.8

ijson-3.0-cp37-cp37m-win_amd64.whl (43.7 kB view details)

Uploaded CPython 3.7mWindows x86-64

ijson-3.0-cp37-cp37m-win32.whl (41.3 kB view details)

Uploaded CPython 3.7mWindows x86

ijson-3.0-cp37-cp37m-manylinux1_x86_64.whl (93.5 kB view details)

Uploaded CPython 3.7m

ijson-3.0-cp37-cp37m-macosx_10_6_x86_64.whl (34.7 kB view details)

Uploaded CPython 3.7mmacOS 10.6+ x86-64

ijson-3.0-cp36-cp36m-win_amd64.whl (43.7 kB view details)

Uploaded CPython 3.6mWindows x86-64

ijson-3.0-cp36-cp36m-win32.whl (41.3 kB view details)

Uploaded CPython 3.6mWindows x86

ijson-3.0-cp36-cp36m-manylinux1_x86_64.whl (93.5 kB view details)

Uploaded CPython 3.6m

ijson-3.0-cp36-cp36m-macosx_10_6_x86_64.whl (34.7 kB view details)

Uploaded CPython 3.6mmacOS 10.6+ x86-64

ijson-3.0-cp35-cp35m-win_amd64.whl (43.7 kB view details)

Uploaded CPython 3.5mWindows x86-64

ijson-3.0-cp35-cp35m-win32.whl (41.3 kB view details)

Uploaded CPython 3.5mWindows x86

ijson-3.0-cp35-cp35m-manylinux1_x86_64.whl (93.5 kB view details)

Uploaded CPython 3.5m

ijson-3.0-cp35-cp35m-macosx_10_6_x86_64.whl (34.7 kB view details)

Uploaded CPython 3.5mmacOS 10.6+ x86-64

ijson-3.0-cp34-cp34m-manylinux1_x86_64.whl (86.7 kB view details)

Uploaded CPython 3.4m

ijson-3.0-cp34-cp34m-macosx_10_6_x86_64.whl (32.2 kB view details)

Uploaded CPython 3.4mmacOS 10.6+ x86-64

ijson-3.0-cp27-cp27mu-manylinux1_x86_64.whl (83.2 kB view details)

Uploaded CPython 2.7mu

ijson-3.0-cp27-cp27m-manylinux1_x86_64.whl (83.2 kB view details)

Uploaded CPython 2.7m

ijson-3.0-cp27-cp27m-macosx_10_6_x86_64.whl (32.1 kB view details)

Uploaded CPython 2.7mmacOS 10.6+ x86-64

File details

Details for the file ijson-3.0.tar.gz.

File metadata

  • Download URL: ijson-3.0.tar.gz
  • Upload date:
  • Size: 43.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0.tar.gz
Algorithm Hash digest
SHA256 13507564c2798a2af9250211b0be246ca75bbf499fd7375803d3f91dccc7c2c1
MD5 db8750274b0bf302ffb102b5facbee3d
BLAKE2b-256 0db3378384d61208d6ea24bd01077f080c2d85d111a8fd31fdf2fb82f8f984cd

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp38-cp38-win_amd64.whl.

File metadata

  • Download URL: ijson-3.0-cp38-cp38-win_amd64.whl
  • Upload date:
  • Size: 44.2 kB
  • Tags: CPython 3.8, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp38-cp38-win_amd64.whl
Algorithm Hash digest
SHA256 fbeebd976881ea025a0b72739921471657952aaf94e1cb235714db897ecea4ee
MD5 5b3a294a00d7baf4d09437a7c15ac5e3
BLAKE2b-256 36008dc66b5fcd60fbbfeea4407242d91c7fab647d4302fb78f118ee20edb188

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp38-cp38-win32.whl.

File metadata

  • Download URL: ijson-3.0-cp38-cp38-win32.whl
  • Upload date:
  • Size: 41.7 kB
  • Tags: CPython 3.8, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp38-cp38-win32.whl
Algorithm Hash digest
SHA256 eaf0c69f38169ed86f046c66e2c3186df23bbee4200326acaca4a2a72c5a9af1
MD5 31f91437a947aceec75dc9d6011c144a
BLAKE2b-256 fb046a8a67fc8838a3fd3516d8da8ce00842760bd805a579e4aa8e7a0e265f2c

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp38-cp38-manylinux1_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp38-cp38-manylinux1_x86_64.whl
  • Upload date:
  • Size: 99.6 kB
  • Tags: CPython 3.8
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp38-cp38-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 5682bf555202e55d135dc31d2c8089738896ad1e962c92c7aa88ecf73dd6013f
MD5 5a21a58814447c5506511e13581e6ec9
BLAKE2b-256 77c097c37fd69f47bf66c9c7adf95f91672baf4d7831827bdf211cf010f0d41f

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp37-cp37m-win_amd64.whl.

File metadata

  • Download URL: ijson-3.0-cp37-cp37m-win_amd64.whl
  • Upload date:
  • Size: 43.7 kB
  • Tags: CPython 3.7m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp37-cp37m-win_amd64.whl
Algorithm Hash digest
SHA256 f6f6979e8111e23bb40c95e9d4af07fce3ec33c11ebf87faffa82e5979147fa4
MD5 6b6e53e92924c194ec2c7dd27af71e45
BLAKE2b-256 e875f012fd9e012866297d68ae85a822b5cddeaa1aa71fc71be3d7b6ae2c349c

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp37-cp37m-win32.whl.

File metadata

  • Download URL: ijson-3.0-cp37-cp37m-win32.whl
  • Upload date:
  • Size: 41.3 kB
  • Tags: CPython 3.7m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp37-cp37m-win32.whl
Algorithm Hash digest
SHA256 bf19611ecc79b0505aeb2a1d712d54adac57d609f5785ab661c53e37d9d262f2
MD5 f0c0da079cb5b905c44f4ac5406660b9
BLAKE2b-256 afd8af959e51279a9bd2ab83ef595347329f91c71eca22bae1bcc814379b594d

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp37-cp37m-manylinux1_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp37-cp37m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 93.5 kB
  • Tags: CPython 3.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp37-cp37m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 af7c32c23a590fe6fd6926f635664c39c6bc2478a1f45d8ce1792ab6a0fdf9ce
MD5 852f231e5f6b57fd5834ee74a629fe9e
BLAKE2b-256 21eaf1bc20692545ebf98ae76597ef34ab37de99c34e352152765e5b562fe62e

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp37-cp37m-macosx_10_6_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp37-cp37m-macosx_10_6_x86_64.whl
  • Upload date:
  • Size: 34.7 kB
  • Tags: CPython 3.7m, macOS 10.6+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp37-cp37m-macosx_10_6_x86_64.whl
Algorithm Hash digest
SHA256 c07b4b2f3905fe9cf7f1fe234e3bb7690952af4229bdcccaf4af30d18811c552
MD5 8ab068dff3c80922e2d56b78bae78c32
BLAKE2b-256 11d17a858851bc22a2c9831731591cfab93495dbb320a2564533ff96eea67955

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp36-cp36m-win_amd64.whl.

File metadata

  • Download URL: ijson-3.0-cp36-cp36m-win_amd64.whl
  • Upload date:
  • Size: 43.7 kB
  • Tags: CPython 3.6m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp36-cp36m-win_amd64.whl
Algorithm Hash digest
SHA256 88df625095b40657bf0bebbf5d29d50fe738c5e3a8f5162fc45e20e886cf9879
MD5 6434972d75fa6105d355186ceeda18a1
BLAKE2b-256 28cab27bc7dcfaa697286cd8587b98d9f70c0af59eae09519d5b2d8d3610419d

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp36-cp36m-win32.whl.

File metadata

  • Download URL: ijson-3.0-cp36-cp36m-win32.whl
  • Upload date:
  • Size: 41.3 kB
  • Tags: CPython 3.6m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp36-cp36m-win32.whl
Algorithm Hash digest
SHA256 7d40d8dced75715b43c05d6d32fbbc5bf1627a212b1c220785c92ba42527d8ee
MD5 5f557c7bab502ed794ecd9f384329ad6
BLAKE2b-256 281536fb5e650957ca015d413bcdd51904e781cba822ce4ca426fa11d122b0dc

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp36-cp36m-manylinux1_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp36-cp36m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 93.5 kB
  • Tags: CPython 3.6m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp36-cp36m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 8f0a017c393849b1732b7ed6fdfff48f783f0a929de15b31563e8e532995b406
MD5 925058b34a181c4b8c20bfff516fdc4f
BLAKE2b-256 991d6b24c322b27e4f0059eefe8404d0c35238112c05f6894b805f68ada72128

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp36-cp36m-macosx_10_6_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp36-cp36m-macosx_10_6_x86_64.whl
  • Upload date:
  • Size: 34.7 kB
  • Tags: CPython 3.6m, macOS 10.6+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp36-cp36m-macosx_10_6_x86_64.whl
Algorithm Hash digest
SHA256 62a5f46d4791a575e97e0445fc3009f5b1f7acfaa9637c166c90e0c69901c02d
MD5 1e904da323f0e8d813818073c0f28efb
BLAKE2b-256 a5f29c99ce1515415c4f9e0404b17df3a6558297331d0ae30b18719976596eda

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp35-cp35m-win_amd64.whl.

File metadata

  • Download URL: ijson-3.0-cp35-cp35m-win_amd64.whl
  • Upload date:
  • Size: 43.7 kB
  • Tags: CPython 3.5m, Windows x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp35-cp35m-win_amd64.whl
Algorithm Hash digest
SHA256 ca1728997c2c5fc3674c782efb82e894bc69bb36103f503c98787590bed4f833
MD5 24db8f472db1e8ec67caa9fc8bcc870c
BLAKE2b-256 3eb5368f4c721d92e74d6b3bbbf04217a5928453130ba483893368f55c5a3761

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp35-cp35m-win32.whl.

File metadata

  • Download URL: ijson-3.0-cp35-cp35m-win32.whl
  • Upload date:
  • Size: 41.3 kB
  • Tags: CPython 3.5m, Windows x86
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp35-cp35m-win32.whl
Algorithm Hash digest
SHA256 b5198a70411355374d1c89c3172d84b112a235552b5c52f088f789a29766939d
MD5 efc99762e6d36a34ef03a9add162a4b2
BLAKE2b-256 c7751c06952593ff67c721096d6d2db5368b08cabba395a4865a89c9fecc6cd1

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp35-cp35m-manylinux1_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp35-cp35m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 93.5 kB
  • Tags: CPython 3.5m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp35-cp35m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 393868911d41fcc9da32a0cb668dbf4f590e6c61a874eb76d74cca80a530c7fe
MD5 e405232d76f260cf54b2c790ac57282c
BLAKE2b-256 dffbd80f8d9dfd00864171491c764b9636abf0f56fb97ec3e27892b9ad579219

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp35-cp35m-macosx_10_6_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp35-cp35m-macosx_10_6_x86_64.whl
  • Upload date:
  • Size: 34.7 kB
  • Tags: CPython 3.5m, macOS 10.6+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp35-cp35m-macosx_10_6_x86_64.whl
Algorithm Hash digest
SHA256 ace2077bf25a8701edbe6fbfab32711158cb1822e46e83dc379ffa4ac77d79c3
MD5 e874c13a388727f5524af8c08bbf4ec3
BLAKE2b-256 cd4c7a1dc0fb8ae5b6db280505ea25994160b1877a649dad68bfd9fca78c8163

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp34-cp34m-manylinux1_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp34-cp34m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 86.7 kB
  • Tags: CPython 3.4m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp34-cp34m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 e43b1522cfb6c9926a6e1d819f0157afdc1c75c9e9f1e7b5b137b7af9c9d1692
MD5 4026c305bf515a5e730d70138c0888e6
BLAKE2b-256 a0c573beacf07fe3dece30ba0d60c429985ee569fcde55e8fc67def4da39a597

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp34-cp34m-macosx_10_6_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp34-cp34m-macosx_10_6_x86_64.whl
  • Upload date:
  • Size: 32.2 kB
  • Tags: CPython 3.4m, macOS 10.6+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp34-cp34m-macosx_10_6_x86_64.whl
Algorithm Hash digest
SHA256 8aecd80e655bd3e450718ae04434dd0eed49e449397ea5b3839314d303ebe77b
MD5 00d9e046f684544f0f4341130e2448e0
BLAKE2b-256 8bda9f3868ab82bc05d2db0db740533e1c426bafccc3c12244ab89a1e6377151

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp27-cp27mu-manylinux1_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp27-cp27mu-manylinux1_x86_64.whl
  • Upload date:
  • Size: 83.2 kB
  • Tags: CPython 2.7mu
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp27-cp27mu-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 da4c7f4e8069d824c9645f72e8fd18bdf924fe2326fce0478b3be3e15b7a1a8e
MD5 07c1eba038224177e2fb646e60de6fc3
BLAKE2b-256 840937b1d9d257899b7d2d25b373fd42f0dc547be61ea366dace343aa9fcea8e

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp27-cp27m-manylinux1_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp27-cp27m-manylinux1_x86_64.whl
  • Upload date:
  • Size: 83.2 kB
  • Tags: CPython 2.7m
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp27-cp27m-manylinux1_x86_64.whl
Algorithm Hash digest
SHA256 fe82ef39fdd8fc4417c2151f8325d0c492ec6caaf5eee943dedbe407a0cd30c4
MD5 55d82f6436a5323708d40826985abdab
BLAKE2b-256 e1063e21cbd51c7f21dfb6052b89a96b84afe0fc6f290e457065d81baf4c6134

See more details on using hashes here.

File details

Details for the file ijson-3.0-cp27-cp27m-macosx_10_6_x86_64.whl.

File metadata

  • Download URL: ijson-3.0-cp27-cp27m-macosx_10_6_x86_64.whl
  • Upload date:
  • Size: 32.1 kB
  • Tags: CPython 2.7m, macOS 10.6+ x86-64
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/40.8.0 requests-toolbelt/0.9.1 tqdm/4.42.0 CPython/3.7.5

File hashes

Hashes for ijson-3.0-cp27-cp27m-macosx_10_6_x86_64.whl
Algorithm Hash digest
SHA256 a903cab278976c3af40bfc49af70b0b2371a1ea2469cc38be7f861a1e5fb1fdb
MD5 1146ab4fa2b20aa18e32088c5dbd516b
BLAKE2b-256 4b34344ebac0c14e0d7a910e7c46940ba246c15165a78d2f275b163d65210abb

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