jsaone
Differenze
Queste sono le differenze tra la revisione selezionata e la versione attuale della pagina.
Entrambe le parti precedenti la revisioneRevisione precedenteProssima revisione | Revisione precedente | ||
jsaone [2013/12/14 16:16] – code pietro | jsaone [2019/02/05 19:16] (versione attuale) – on github pietro | ||
---|---|---|---|
Linea 1: | Linea 1: | ||
- | ====== | + | {{:jsaone: |
- | This is a tiny wrapper around the standard | + | {{: |
+ | |||
+ | {{: | ||
+ | |||
+ | ====== What is jsaone? ====== | ||
+ | |||
+ | This is a tiny wrapper around the json module in the Python standard | ||
This can be useful for | This can be useful for | ||
Linea 15: | Linea 21: | ||
totalling 174 MB: | totalling 174 MB: | ||
- | ^ Parser | + | ^ Parser |
- | | standard (non-incremental) json | | + | | standard (non-incremental) json | 9.511 |
- | | cythonized jsaone | + | | cythonized jsaone |
- | | ijson (with yajl2 backend) | + | | ijson (with yajl2 backend) |
- | | pure python jsaone | + | | pure python jsaone |
Linea 25: | Linea 31: | ||
Clearly those numbers are affected by the speed of the CPU and of the medium/ | Clearly those numbers are affected by the speed of the CPU and of the medium/ | ||
- | In general | + | In particular, since the test was made on a file from a local hard disk, the |
- | fastest will be the standard json compared to incremental ones (including | + | bottleneck was clearly |
- | jsaone). | + | parsers |
+ | jsaone should even outperform | ||
+ | only after the entire stream is received. | ||
=== Why " | === Why " | ||
Linea 39: | Linea 47: | ||
* for speedup: [[http:// | * for speedup: [[http:// | ||
- | === Installation | + | === Installing |
- | The simplest way to try jsaone is to extract | + | - If you use Debian or a derivative (such as Ubuntu or Mint), you can simply use the packages provided above. |
+ | - **jsaone** is on pypi, so you can install | ||
+ | - you can extract/clone the git repo, then move in the " | ||
- | | + | |
- | and then import | + | (replace " |
+ | |||
+ | |||
+ | === Usage === | ||
+ | |||
+ | |||
+ | | ||
+ | with open('/ | ||
+ | gen = jsaone.load(f) | ||
+ | for key, val in gen: | ||
+ | ... | ||
=== Development === | === Development === | ||
- | You can browse the git repo [[http://www.pietrobattiston.it/gitweb?p=jsaone.git|here]] or clone with | + | You can browse the git repo [[https://github.com/toobaz/ |
- | git clone git://pietrobattiston.it/jsaone | + | git clone https://github.com/toobaz/jsaone.git |
For bugs and enhancements, | For bugs and enhancements, | ||
+ | |||
+ | Jsaone should be able to parse any compliant json string... so if you find one on which it fails, please let me know! | ||
=== License === | === License === | ||
- | Released under the GPL 3. | + | Released under the GPL 3. Feel free to contact me if this is a problem for you (and GPL 2 is not). |
jsaone.1387034173.txt.gz · Ultima modifica: 2013/12/14 16:16 (modifica esterna)