我最近正在进行Twitter分析,并希望将Twitter搜索的结果本地保存到.json文件中。
我同时使用“ searchtweets”进行历史搜索和使用“ tweepy”进行流式传输。我得到的结果是对象稍有不同,但是我认为两个结果都与.json兼容。
这是我的代码(示例,我已经登录了API):
new_tweets = API.user_timeline(screen_name='huliangw20', count=20,
tweet_mode='extended')
with open('test_tweets_v2.json', 'w',encoding='utf-8') as outfile:
outfile.write(new_tweets)
它不起作用。 通常,每个查询给我一个包含许多Tweet对象的结果集。我的目标是使用python将这些对象保存到.json文件中。
如果能给我一些建议,我将不胜感激。
答案 0 :(得分:2)
您可以使用python中的json标准库。
将字符串读取为json:
>>> import json
>>> json.dumps(['foo', {'bar': ('baz', None, 1.0, 2)}])
'["foo", {"bar": ["baz", null, 1.0, 2]}]'
将json转换为字符串:
>>> import json
>>print(json.dumps({"c": 0, "b": 0, "a": 0}, sort_keys=True))
{"a": 0, "b": 0, "c": 0}
使用此功能,您可以保存在磁盘上:
def writeToJSONFile(path, fileName, data):
try:
filePathNameWExt = path + fileName
with open(filePathNameWExt, 'w') as fp:
json.dump(data, fp)
except Exception as e:
if(not quiet):
print "writeToJSONFile exception"
print e
最后在“手上”生成一个json:
>>> jsonToSave = {}
>>> jsonToSave['id'] = id
>>> metaJson = {}
>>> metaJson['version'] = VERSION
>>> jsonToSave['metadata'] = metaJson
更多信息:https://docs.python.org/3/library/json.html 更多信息:https://docs.python.org/2/library/json.html