从json中提取信息

时间:2013-12-19 17:23:08

标签: python json facebook-graph-api csv

如何从这个来自Facebook Graph API的json文件中提取id,likes,name,category,created_at

{
  "rows" : [
    {
      "id" : "145907652175534",
      "interests" : "{\"likes\":150319,\"id\":\"145907652175534\"}",
      "name" : "The Lion, the Witch and the Wardrobe",
      "category" : "Book",
      "created_time" : "2013-12-19T16:15:01+0000"
    },
    {
      "id" : "190616700999052",
      "interests" : "{\"likes\":1027992,\"id\":\"190616700999052\"}",
      "name" : "C. S. Lewis",
      "category" : "Author",
      "created_time" : "2013-12-19T16:14:47+0000"
    },
    {
      "id" : "577324418996792",
      "interests" : "{\"likes\":1672,\"id\":\"577324418996792\"}",
      "name" : "Big Data",
      "category" : "Community",
      "created_time" : "2013-12-19T16:14:38+0000"
    },
    {
      "id" : "134488303306371",
      "interests" : "{\"likes\":5718,\"id\":\"134488303306371\"}",
      "name" : "Big Data University",
      "category" : "Computers/internet website",
      "created_time" : "2013-12-19T16:14:21+0000"
    }
  ]
}

2 个答案:

答案 0 :(得分:2)

您会感兴趣的是一个名为json的标准库:

import json

jstring = ##insert your json string here###

data = json.loads(jstring)

data将成为嵌套字典/列表的python对象。你应该从那里进行实验,找出如何访问你想要的东西。

如果您想撰写CSV,请查看csv

import csv

data = ### a list of lists ###

with open('filename.csv', 'w') as f:
    csv.writer(f).writerows(data)

答案 1 :(得分:0)

你可以这样做:

import json

data_list = json.loads(json_data)
ans_list = []
data_list = data['rows']
for row in data_list:
    ans_list.append(row['id'], row['interests'], row['name'], row['category'], row['created_time'])
print(ans_list)