如何仅使用 curl 和 python 从 json 中准确获取值

How can I get accurately get a value from some json using just curl and python

我需要使用 Amazon Linux EC2 实例上本机可用的工具从 api 卷曲的 JSON 数据结构中准确获取单个值(Python 和 CURL)默认存在,所以我没有通过 yum/github/curl 飞任何东西。所讨论的值将用于 Amazon 用户数据脚本以唯一标识集群中的服务器,因此紧凑性很重要。

例如:

curl https://superdooperapi.io/get-me-an-id 

会return

{ "id": 12398990, "date": "2015-01-10" }

我只需要 id 的单个数值,这样我就可以在 shell 脚本中使用它。我可以使用 grep/sed/awk 但这看起来很乱。 编写一个完整的 python 脚本来执行很容易,但我想要一个可以在启动脚本中使用的优雅的单行解决方案。

这里有一些简单的紧凑型 python 可以为您完成:

curl -s https://superdooperapi.io/get-me-an-id | python -c 'import json,sys;data=json.load(sys.stdin);print data["id"]'

那将 return 12398990