我对 Python 比较陌生,所以我的问题可能很容易解决,但是经过几天的尝试和搜索,我找不到任何东西。
所以我构建了一个脚本来从 Twitter 流式传输数据并将收集到的数据存储到一个json文件中,以便我以后可以访问它并执行任何操作。该脚本使用以下代码从单独的文件中提取用户凭据(如consumer key、token和access info
with open('Twitter_Credentials.json', mode = 'a+') as tc:
data = json.load(tc)
if user not in data['names']:
user_dict = dict()
user_dict[user] = {'key':'','secret':'','token':'','token_secret':''}
user_dict[user]['key'] = input('Twitter Consumer Key: ')
user_dict[user]['secret'] = input('Twitter Consumer Secret: ')
user_dict[user]['token'] = input('Twitter Access Token: ')
user_dict[user]['token_secret'] = input('Twitter Access Secret: ')
data['names'].append(user_dict)
json.dump(data,tc, indent = 2, ensure_ascii = False)
tc.close()
我遇到的问题是,如果我想将另一个用户及其凭据附加到此文件中,我会不断收到此错误:
File "(filepath)", line 357, in raw_decode
raise JSONDecodeError("Expecting value", s, err.value) from None
json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
我已经尝试过的事情:
'r'使用,'r+','w',修改模式'w+'- 改变
load()和dump()到loads()和dumps() - 更改编码
使用'r+'and'w+'并没有给我一个错误,但它确实复制了原始用户,因此他们出现了多次。我想消除它,以便在它附加时不会重复。任何见解将不胜感激。提前致谢。