这是我的代码:
#creating a list of tweets ID and a dictionary with the values
tweet_ids = list(df1.tweet_id)
tweet_data = {}
for tweet in tweet_ids[:5]:
try:
tweet_status = api.get_status(tweet, tweet_mode='extended')
id_str = tweet_status.id_str
retweet_count = tweet_status.retweet_count
favorite_count = tweet_status.favorite_count
tweet_data[id_str] = retweet_count, favorite_count
except:
print("Error for: " + str(tweet))
结果
输入tweet_status
输出:
{'892420643555336193': (8374, 38224),
'892177421306343426': (6181, 32766),
'891815181378084864': (4090, 24675),
'891689557279858688': (8512, 41548),
'891327558926688256': (9219, 39740)}
到目前为止还不错。...但是当我创建一个文本文件时,它会创建一个像这样的文件:
{'892420643555336193': (8374, 38223), '892177421306343426': (6181, 32765), '891815181378084864': (4090, 24675), '891689557279858688': (8513, 41546), '891327558926688256': (9220, 39737)}
用于创建文件的代码:
f = open('tweet_json.txt', 'w')
f.write(str(tweet_data))
f.close()
答案 0 :(得分:1)
在写入文件之前,您可以使用json.dumps
格式化JSON字符串:
import json
f = open('tweet_json.txt', 'w')
f.write(json.dumps(tweet_data, indent=2))
f.close()
文件输出如下:
{
"892420643555336193": [
8374,
38224
],
"892177421306343426": [
6181,
32766
],
"891815181378084864": [
4090,
24675
],
"891689557279858688": [
8512,
41548
],
"891327558926688256": [
9219,
39740
]
}