JSONx - Easy JSON wrapper packed with features.

Related tags

JSONpythonjson
Overview

🈷️ JSONx

Easy JSON wrapper packed with features.

This was made for small discord bots, for big bots you should not use this JSON wrapper.

📥 Usage

Clone this file into your project folder.

Add from db import JSONx to the top of your project.

📄 Docs

db.set(key: str, value, *, pathmagic="")

Sets the key to the value in the JSON.

if the pathmagic kwarg is given, it will spit it by the +'s and make dicts(or use existing ones) until it finishes, then it will set the value to the key in the last dict.

Note that the pathmagic kwarg will override its path if it isnt a dict.

db.get(key: str, *, default=None, pathmagic="")

Returns the value of the key in the json, if the key isn't set in the json, it returns the default kwarg.

if the pathmagic kwarg is given, it will spit it by the +'s and follow the path in it in the JSON data, it will return the default kwarg if the path is empty or has a value that isnt a dict.

db.all()

Returns all the JSON data.

db.rem(key: str, *, pathmagic="")

Removes the key and value pair from the JSON.

Note that this will not do anything if the key isn't set in the JSON or the path is invalid.

if the pathmagic kwarg is given, it will spit it by the +'s and follow the path in it in the JSON data, then it will remove the key and value pair.

db.nuke()

Deletes everything in the JSON.

Use with caution.

📘 Examples

Assume that the db.json file is empty

db.set()

Normal usage

Code

from db import JSONx

db = JSONx("db.json")

db.set("test", 123)

data = db.all()

print(data)

Output

{'test': 123}

Using with pathmagic kwarg

Code

from db import JSONx

db = JSONx("db.json")

db.set("test", 123, pathmagic="a+b+c")

data = db.all()

print(data)

Output

{'a': {'b': {'c': {'test': 123}}}}

db.get()

Normal usage

Code

from db import JSONx

db = JSONx("db.json")

db.set("test", 123)

data = db.get("test")

print(data)

Output

123

Using without default kwarg

Code

from db import JSONx

db = JSONx("db.json")

data = db.get("test")

print(data)

Output

None

Using with default kwarg

Code

from db import JSONx

db = JSONx("db.json")

data = db.get("test", default=123)

print(data)

Output

123

Using with pathmagic kwarg

Code

from db import JSONx

db = JSONx("db.json")

db.set("test", 123, pathmagic="a+b+c")

data = db.get("test", pathmagic="a+b+c")

print(data)

Output

123

db.rem()

Normal usage

Code

from db import JSONx

db = JSONx("db.json")

db.set("test", 123)

data = db.all()

print(data)

db.rem("test")

data = db.all()

print(data)

Output

{'test': 123}
{}

Using with pathmagic kwarg

Code

from db import JSONx

db = JSONx("db.json")

db.set("test", 123, pathmagic="a+b+c")

data = db.all()

print(data)

db.rem("test", pathmagic="a+b+c")

data = db.all()

print(data)

Output

{'a': {'b': {'c': {'test': 123}}}}
{'a': {'b': {'c': {}}}}
You might also like...
A fast JSON parser/generator for C++ with both SAX/DOM style API
A fast JSON parser/generator for C++ with both SAX/DOM style API

A fast JSON parser/generator for C++ with both SAX/DOM style API Tencent is pleased to support the open source community by making RapidJSON available

 simdjson : Parsing gigabytes of JSON per second
simdjson : Parsing gigabytes of JSON per second

JSON is everywhere on the Internet. Servers spend a *lot* of time parsing it. We need a fresh approach. The simdjson library uses commonly available SIMD instructions and microparallel algorithms to parse JSON 4x faster than RapidJSON and 25x faster than JSON for Modern C++.

import json files directly in your python scripts
import json files directly in your python scripts

Install Install from git repository pip install git+https://github.com/zaghaghi/direct-json-import.git Use With the following json in a file named inf

An tiny CLI to load data from a JSON File during development.

JSON Server - An tiny CLI to load data from a JSON File during development.

Convert your subscriptions csv file into a valid json for Newpipe!
Convert your subscriptions csv file into a valid json for Newpipe!

Newpipe-CSV-Fixer Convert your Google subscriptions CSV file into a valid JSON for Newpipe! Thanks to nikcorg for sharing how to convert the CSV into

Low code JSON to extract data in one line

JSON Inline Low code JSON to extract data in one line ENG RU Installation pip install json-inline Usage Rules Modificator Description ?key:value Searc

JSON for Modern C++ Release Scripts

JSON for Modern C++ Release Scripts Preparations Install required tools: make install_requirements. Add required keys to config.json (apparently not c

jq for Python programmers Process JSON and HTML on the command-line with familiar syntax.

jq for Python programmers Process JSON and HTML on the command-line with familiar syntax.

Json GUI for No Man's Sky save file

NMS-Save-Parser Json GUI for No Man's Sky save file GUI python NMS_SAVE_PARSER.py [optional|save.hg] converter only python convert.py usage: conver

Comments
  • Sourcery refactored main branch

    Sourcery refactored main branch

    Branch main refactored by Sourcery.

    If you're happy with these changes, merge this Pull Request using the Squash and merge strategy.

    See our documentation here.

    Run Sourcery locally

    Reduce the feedback loop during development by using the Sourcery editor plugin:

    Review changes via command line

    To manually merge these changes, make sure you're on the main branch, then run:

    git fetch origin sourcery/main
    git merge --ff-only FETCH_HEAD
    git reset HEAD^
    

    Help us improve this pull request!

    opened by sourcery-ai[bot] 1
Releases(v1.2.0)
No more boilerplate to check and build a Python object from JSON.

JSONloader This module is for you if you're tired of writing boilerplate that: builds a straightforward Python object from loaded JSON. checks that yo

3 Feb 05, 2022
A fast JSON parser/generator for C++ with both SAX/DOM style API

A fast JSON parser/generator for C++ with both SAX/DOM style API Tencent is pleased to support the open source community by making RapidJSON available

Tencent 12.6k Dec 30, 2022
Console to handle object storage using JSON serialization and deserealization.

Console to handle object storage using JSON serialization and deserealization. This is a team project to develop a Python3 console that emulates the AirBnb object management.

Ronald Alexander 3 Dec 03, 2022
An tiny CLI to load data from a JSON File during development.

JSON Server - An tiny CLI to load data from a JSON File during development.

Yuvraj.M 4 Mar 22, 2022
Creates fake JSON files from a JSON schema

Use jsf along with fake data generators to provide consistent and meaningful fake data for your system.

Andy Challis 86 Jan 03, 2023
MOSP is a platform for creating, editing and sharing validated JSON objects of any type.

MONARC Objects Sharing Platform Presentation MOSP is a platform for creating, editing and sharing validated JSON objects of any type. You can use any

CASES Luxembourg 72 Dec 14, 2022
A Cobalt Strike Scanner that retrieves detected Team Server beacons into a JSON object

melting-cobalt 👀 A tool to hunt/mine for Cobalt Strike beacons and "reduce" their beacon configuration for later indexing. Hunts can either be expans

Splunk GitHub 150 Nov 23, 2022
Marshall python objects to and from JSON

Pymarshaler - Marshal and Unmarshal Python Objects Disclaimer This tool is in no way production ready About Pymarshaler allows you to marshal and unma

Hernan Romer 9 Dec 20, 2022
Ibmi-json-beautify - Beautify json string with python

Ibmi-json-beautify - Beautify json string with python

Jefferson Vaughn 3 Feb 02, 2022
Small python wrapper around the valico rust library to provide fast JSON schema validation.

Small python wrapper around the valico rust library to provide fast JSON schema validation.

Simon J Knibbs 5 Jul 12, 2019
Make JSON serialization easier

Make JSON serialization easier

4 Jun 30, 2022
Fileson - JSON File database tools

Fileson is a set of Python scripts to create JSON file databases

Joonas Pihlajamaa 2 Feb 02, 2022
Random JSON Key:Pair Json Generator

Random JSON Key:Value Pair Generator This simple script take an engish dictionary of words and and makes random key value pairs. The dictionary has ap

Chris Edwards 1 Oct 14, 2021
Same as json.dumps or json.loads, feapson support feapson.dumps and feapson.loads

Same as json.dumps or json.loads, feapson support feapson.dumps and feapson.loads

boris 5 Dec 01, 2021
cysimdjson - Very fast Python JSON parsing library

Fast JSON parsing library for Python, 7-12 times faster than standard Python JSON parser.

TeskaLabs 235 Dec 29, 2022
json|dict to python object

Pyonize convert json|dict to python object Setup pip install pyonize Examples from pyonize import pyonize

bilal alpaslan 45 Nov 25, 2022
A daily updated JSON dataset of all the Open House London venues, events, and metadata

Open House London listings data All of it. Automatically scraped hourly with updates committed to git, autogenerated per-day CSV's, and autogenerated

Jonty Wareing 4 Jan 01, 2022
A tools to find the path of a specific key in deep nested JSON.

如何快速从深层嵌套 JSON 中找到特定的 Key #公众号 在爬虫开发的过程中,我们经常遇到一些 Ajax 加载的接口会返回 JSON 数据。

kingname 56 Dec 13, 2022
jq for Python programmers Process JSON and HTML on the command-line with familiar syntax.

jq for Python programmers Process JSON and HTML on the command-line with familiar syntax.

Denis Volk 3 Jan 09, 2022
Package to Encode/Decode some common file formats to json

ZnJSON Package to Encode/Decode some common file formats to json Available via pip install znjson In comparison to pickle this allows having readable

ZINC 2 Feb 02, 2022