0

我回顾了一些与我相关的问题,发现这有点独特。我在 OS X 10.7 上使用 Python 2.7.1。还有一点需要注意:我更像是一名黑客而不是开发人员。

我从Python 文档中获取了以下语法,以尝试执行“Pretty Print:”

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

4

1 回答 1

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
于 2012-07-24T19:37:29.520 回答