我为了获得推文而消费tweepy,我想将它们推送到一个JSON文件中,如:
{
"content": [
{
"text": "one tweet",
"rts": 2,
"favs": 17
},
{
"text": "another tweet",
"rts": 2,
"favs": 17
},
{
"text": "one last tweet",
"rts": 2,
"favs": 17
}
]
}
所以我用:
import json
json_serial = "tweet"
my_json = {
'content': {
"text": json_serial,
"rt": '2',
"favs": '3',
}
}
print(json.dumps(my_json))
但是这会给我一条JSON每条推文,我想知道如何创建一个JSON并将所有推文放入其中。
答案 0 :(得分:0)
这是你要求的。 你需要将tweet数据附加到内容变量,然后最后你可以将它写入一个你想要使用它的方式的文件。它将生成一个有效的json。
import json
my_json = {"content": []}
tweets = ["one", "middle", "last"]
for tweet in tweets:
dict_data = {
"text": tweet,
"rt": '2',
"favs": '3',
}
my_json["content"].append(dict_data)
print(json.dumps(my_json,indent=4, sort_keys=True))
输出
{
"content":[
{
"text":"one",
"rt":"2",
"favs":"3"
},
{
"text":"middle",
"rt":"2",
"favs":"3"
},
{
"text":"last",
"rt":"2",
"favs":"3"
}
]
}
答案 1 :(得分:0)
我不清楚你在问什么,这有帮助吗? 你是如何一次收到一条推文的?
import json
json_serial = 'tweet'
my_json = {
'content': [
{"text": "tweet one",
"rt": '1',
"favs":'3',
},
{"text": "another tweet",
"rt": '2',
"favs":'9',
},
{"text": "yet another tweet",
"rt": '3',
"favs":'6',
},
]
}
print(json.dumps(my_json))
$ python json-python.py
{"content": [{"rt": "2", "text": "tweet", "favs": "3"}, {"rt": "2", "text": "tweet", "favs": "3"}, {"rt": "2", "text": "tweet", "favs": "3"}]}