JSON processing toolkit for validating, formatting, querying, and comparing JSON data...
A toolkit for working with JSON data using Python standard library only.
Activate this skill when the user needs to:
Always run scripts with --help first to see all available options.
| Script | Purpose |
|---|---|
validate_json.py |
Check if JSON is valid |
format_json.py |
Pretty-print or minify JSON |
query_json.py |
Extract data using path expressions |
diff_json.py |
Compare two JSON files |
Task β What do you need?
β
ββ Check if JSON is valid?
β ββ Use: validate_json.py <file>
β
ββ Format/beautify JSON?
β ββ Use: format_json.py <file>
β
ββ Extract specific data?
β ββ Use: query_json.py <file> <path>
β
ββ Compare two JSON files?
ββ Use: diff_json.py <file1> <file2>
Validate JSON:
python scripts/validate_json.py data.json
echo '{"key": "value"}' | python scripts/validate_json.py -
Format JSON:
python scripts/format_json.py data.json
python scripts/format_json.py data.json --indent 4
python scripts/format_json.py data.json --minify
Query JSON:
python scripts/query_json.py data.json "users"
python scripts/query_json.py data.json "users.0.name"
python scripts/query_json.py data.json "config.database.host"
Compare JSON:
python scripts/diff_json.py old.json new.json
python scripts/diff_json.py config1.json config2.json --keys-only
The query_json.py script uses dot-notation paths:
| Path | Description |
|---|---|
key |
Access object key |
0, 1, 2 |
Access array index |
key.subkey |
Nested access |
items.0.name |
Mixed access |
. or empty |
Root element |
Given JSON:
{
"users": [
{"name": "Alice", "age": 30},
{"name": "Bob", "age": 25}
],
"config": {
"debug": true
}
}
| Path | Result |
|---|---|
users |
The users array |
users.0 |
First user object |
users.0.name |
"Alice" |
users.1.age |
25 |
config.debug |
true |
All scripts accept input from:
script.py data.jsonecho '{}' | script.py -script.py --string '{"key": "value"}'validate_json.py response.jsonformat_json.py api_response.jsonquery_json.py config.json "database.host"diff_json.py prod.json staging.json