jmespath.py VS xsv

Compare jmespath.py vs xsv and see what are their differences.

jmespath.py

JMESPath is a query language for JSON. (by jmespath)

xsv

A fast CSV command line toolkit written in Rust. (by BurntSushi)
Our great sponsors
  • WorkOS - The modern identity platform for B2B SaaS
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • SaaSHub - Software Alternatives and Reviews
jmespath.py xsv
30 64
2,065 10,058
1.6% -
0.0 0.0
about 1 month ago about 2 months ago
Python Rust
MIT License The Unlicense
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

jmespath.py

Posts with mentions or reviews of jmespath.py. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-02-29.
  • Automating Nightly Local Database Refreshes from Azure Blob Storage with Docker
    3 projects | dev.to | 29 Feb 2024
    The Azure CLI lets us write queries to filter the results of the az storage blob list command. The queries are written in JMESPath, which is a query language for JSON. In this case, we are filtering the results to only include blobs that end with the .bacpac extension and then selecting the first one as ordered by the lastModified property. If there are no blobs found, the script exits with a failure code. If we find a blob, we download it to the local path specified by the localPath variable.
  • What's New in Python 3.12
    5 projects | news.ycombinator.com | 18 Oct 2023
    For JSON there is the `jmespath` library which might help.

    https://github.com/jmespath/jmespath.py

  • jq 1.7 Released
    33 projects | news.ycombinator.com | 6 Sep 2023
    I love jq, but I also use JMESPath (especially with AWS CLI), yq (bundled with tomlq and xq as well), and dasel [2]. I also wish hclq [3] wasn't so dead!

    [0]: https://jmespath.org/

  • Announcing serde-query 0.2.0
    5 projects | /r/rust | 25 Feb 2023
    Probably writing the query side of things is a lot of the fun here, but there is actually a spec (and a complying Rust impl) you can hook into for this JQ-like querying: https://jmespath.org/ ( https://github.com/jmespath/jmespath.rs ).
  • JMESPath
    1 project | news.ycombinator.com | 13 Jan 2023
  • Spring Boot logging with Loki, Promtail, and Grafana (Loki stack)
    5 projects | dev.to | 6 Jan 2023
    Thanks to custom variables that use labels, we can create various filters for the dashboard. You can look up my configuration of variables and extend it with an analogy way for your own needs. At the top, I marked the filter with detected pods in selected namespace. In the lower part, you can see a preview of all labels that are associated with a single log line. Most labels are meta information that Promtail adds during scraping targets. This part of the Promtail configuration provides it. In this section, I also marked a few labels that not comes out-of-the box e.g. leavel , class , thread . We added these labels using the Promtail json stage. You need to know that Promtail processes scraped logs in a pipeline. A pipeline is comprised of a set of stages. json stage is a parsing stage that reads the log line as JSON and accepts JMESPath expressions to extract data.
  • Who is JSON?
    1 project | /r/ProgrammerHumor | 3 Nov 2022
  • jmespath.py VS jertl - a user suggested alternative
    2 projects | 31 Oct 2022
  • YAML value retrieval
    1 project | /r/ansible | 25 Oct 2022
    The tester on the official website for JMESPath (what json_query is doing) has been useful to me: https://jmespath.org/
  • I've built a PathDict, a library that makes it easy to work with dicts!
    4 projects | /r/Python | 15 Oct 2022
    Interesting. How does this compared to Jmespath? Not saying Jmespath is superior, just wondering whether you were aware of it.

xsv

Posts with mentions or reviews of xsv. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-04-02.
  • Show HN: TextQuery – Query and Visualize Your CSV Data in Minutes
    3 projects | news.ycombinator.com | 2 Apr 2024
    I realize it's not really that comparable since these tools don't support SQL, but a more fully functioned CLI tool is - https://github.com/BurntSushi/xsv

    They are both fairly good

  • Qsv: Efficient CSV CLI Toolkit
    8 projects | news.ycombinator.com | 22 Dec 2023
  • Joining CSV Data Without SQL: An IP Geolocation Use Case
    3 projects | news.ycombinator.com | 19 Oct 2023
    I have done some similar, simpler data wrangling with xsv (https://github.com/BurntSushi/xsv) and jq. It could process my 800M rows in a couple of minutes (plus the time to read it out from the database =)
  • Qsv: CSVs sliced, diced and analyzed (fork of xsv)
    2 projects | news.ycombinator.com | 27 Jun 2023
    xsv, which seems to be why qsv was created.

    [1] https://github.com/BurntSushi/xsv/issues/267

  • I wrote this iCalendar (.ics) command-line utility to turn common calendar exports into more broadly compatible CSV files.
    6 projects | /r/commandline | 24 Mar 2023
    CSV utilities (still haven't pick a favorite one...): https://github.com/harelba/q https://github.com/BurntSushi/xsv https://github.com/wireservice/csvkit https://github.com/johnkerl/miller
  • Icsp – Command-line iCalendar (.ics) to CSV parser
    3 projects | news.ycombinator.com | 24 Mar 2023
  • ripgrep is faster than {grep, ag, git grep, ucg, pt, sift}
    8 projects | /r/programming | 24 Mar 2023
    $ git remote -v origin [email protected]:rust-lang/rust (fetch) origin [email protected]:rust-lang/rust (push) $ git rev-parse HEAD 3b0d4813ab461ec81eab8980bb884691c97c5a35 $ time grep -ri burntsushi ./ ./src/tools/cargotest/main.rs: repo: "https://github.com/BurntSushi/ripgrep", ./src/tools/cargotest/main.rs: repo: "https://github.com/BurntSushi/xsv", grep: ./target/debug/incremental/cargotest-2dvu4f2km9e91/s-gactj3ma2j-1b10l4z-2l60ur55ixe6n/query-cache.bin: binary file matches grep: ./target/debug/incremental/cargotest-38cpmhhbdgdyq/s-gactj3luwq-1o12vgp-t61hd8qdyp7t/query-cache.bin: binary file matches grep: ./target/debug/incremental/cargotest-17632op6djxne/s-gawuq5468i-1h69nfw-4gm0s8yhhiun/query-cache.bin: binary file matches grep: ./target/debug/incremental/cargotest-2trm4kt5yom3r/s-gawuq53qqg-bjiezj-lo0gha8ign8w/query-cache.bin: binary file matches grep: ./target/debug/deps/libregex_automata-c74a6d9fd0abd77b.rmeta: binary file matches grep: ./target/debug/deps/libsame_file-a0e0363a2985455d.rlib: binary file matches grep: ./target/debug/deps/libsame_file-a0e0363a2985455d.rmeta: binary file matches grep: ./target/debug/deps/libsame_file-7251d8d3586a319b.rmeta: binary file matches grep: ./build/x86_64-unknown-linux-gnu/stage0-sysroot/lib/rustlib/x86_64-unknown-linux-gnu/lib/libaho_corasick-999a08e2b700420d.rlib: binary file matches grep: ./build/x86_64-unknown-linux-gnu/stage0-sysroot/lib/rustlib/x86_64-unknown-linux-gnu/lib/libregex_automata-0d168be5d25b3ac5.rlib: binary file matches grep: ./build/x86_64-unknown-linux-gnu/stage0-tools/x86_64-unknown-linux-gnu/release/deps/libregex_automata-7d6bec0156f15da1.rlib: binary file matches grep: ./build/x86_64-unknown-linux-gnu/stage0-tools/x86_64-unknown-linux-gnu/release/deps/libregex_automata-7d6bec0156f15da1.rmeta: binary file matches grep: ./build/x86_64-unknown-linux-gnu/stage0-tools/x86_64-unknown-linux-gnu/release/deps/libaho_corasick-07dee4514b87d99b.rmeta: binary file matches grep: ./build/x86_64-unknown-linux-gnu/stage0-tools/x86_64-unknown-linux-gnu/release/deps/libaho_corasick-07dee4514b87d99b.rlib: binary file matches grep: ./build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libaho_corasick-999a08e2b700420d.rlib: binary file matches grep: ./build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libaho_corasick-999a08e2b700420d.rmeta: binary file matches grep: ./build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libregex_automata-0d168be5d25b3ac5.rlib: binary file matches grep: ./build/x86_64-unknown-linux-gnu/stage0-rustc/x86_64-unknown-linux-gnu/release/deps/libregex_automata-0d168be5d25b3ac5.rmeta: binary file matches grep: ./build/bootstrap/debug/deps/libaho_corasick-992e1ba08ef83436.rmeta: binary file matches grep: ./build/bootstrap/debug/deps/libignore-54d41239d2761852.rmeta: binary file matches grep: ./build/bootstrap/debug/deps/libsame_file-9a5e3ddd89cfe599.rlib: binary file matches grep: ./build/bootstrap/debug/deps/libregex_automata-8e700951c9869a66.rlib: binary file matches grep: ./build/bootstrap/debug/deps/libignore-54d41239d2761852.rlib: binary file matches grep: ./build/bootstrap/debug/deps/libaho_corasick-992e1ba08ef83436.rlib: binary file matches grep: ./build/bootstrap/debug/deps/libregex_automata-8e700951c9869a66.rmeta: binary file matches grep: ./build/bootstrap/debug/deps/libsame_file-9a5e3ddd89cfe599.rmeta: binary file matches real 16.683 user 15.793 sys 0.878 maxmem 8 MB faults 0
  • Any Linux admins willing to try Pygrep?
    6 projects | /r/linuxadmin | 18 Mar 2023
    Unrelated, are you the same burntsushi that wrote xsv?
  • Analyzing multi-gigabyte JSON files locally
    14 projects | news.ycombinator.com | 18 Mar 2023
    If it could be tabular in nature, maybe convert to sqlite3 so you can make use of indexing, or CSV to make use of high-performance tools like xsv or zsv (the latter of which I'm an author).

    https://github.com/BurntSushi/xsv

    https://github.com/liquidaty/zsv/blob/main/docs/csv_json_sql...

  • What monitoring tool do you use or recommend?
    5 projects | /r/selfhosted | 6 Mar 2023
    Oh and there's rad cli shit out there for CSV files too, like xsv

What are some alternatives?

When comparing jmespath.py and xsv you can also consider the following projects:

jq - Command-line JSON processor [Moved to: https://github.com/jqlang/jq]

csvtk - A cross-platform, efficient and practical CSV/TSV toolkit in Golang

jq - Command-line JSON processor

miller - Miller is like awk, sed, cut, join, and sort for name-indexed data such as CSV, TSV, and tabular JSON

yq - yq is a portable command-line YAML, JSON, XML, CSV, TOML and properties processor

ripgrep - ripgrep recursively searches directories for a regex pattern while respecting your gitignore

jfq - JSONata on the command line

Servo - Servo, the embeddable, independent, memory-safe, modular, parallel web rendering engine

jello - CLI tool to filter JSON and JSON Lines data with Python syntax. (Similar to jq)

svgcleaner - svgcleaner could help you to clean up your SVG files from the unnecessary data.

yq - Command-line YAML, XML, TOML processor - jq wrapper for YAML/XML/TOML documents

Fractalide - Reusable Reproducible Composable Software