我回顾了一些与我有关的问题,发现这有点独特。我在OS X 10.7上使用Python 2.7.1。还有一点需要注意:我不是开发人员,而是黑客。
我从Python documentation获取了下面的语法,试图做一个“漂亮的打印:”
date = {}
data = urllib2.urlopen(url)
s = json.dumps(data.read(), sort_keys=True, indent=4)
print '\n'.join([l.rstrip() for l in s.splitlines()])
我希望使用rstrip / splitlines命令可以扩展调用,如示例中所示。
另外,不确定它是否相关,但在将输出传递给python -mjson.tool
时,回复为No JSON object could be decoded
这是我正在尝试解析的cURL输出的片段:
{"data":[{"name":"Site Member","created_at":"2012-07-24T11:22:04-07:00","activity_id":"500ee7cbbaf02xxx8e011e2e",
等等。
主要目标是使这些数据混乱更清晰,以便我可以从中学习并开始构建基于参数的一些自动数据抓取。任何让我从绿色到成功的指导都是一个巨大的帮助。
谢谢,
MJB
答案 0 :(得分:2)
urllib2.urlopen()。read()的输出是一个字符串,需要先将其转换为对象,然后再调用json.dumps()
。
修改后的代码:
date = {}
data = urllib2.urlopen(url)
data_obj = json.loads(data.read())
s = json.dumps(data_obj, sort_keys=True, indent=4)
print s