2016-02-09 115 views
0

我正在使用Twitter的流媒体API来使用Tweepy提取推文并将它们写入到json文件中。到目前为止,我已经成功地提取了推文,并使用file write将它们写入了一个json文件,但是当我尝试使用json package时,我收到了以下代码中提到的错误。字典json在循环python

def on_data(self, data): 
    #to convert data to dict format since twitter data is in string format 
    json_data = json.loads(data) 
    try: 
     with open('twitter_data.json','ab') as f: 
       if 'limit' in json_data.keys(): 
        return True 
       else: 
        #This method works 
        #f.write(json.dumps(json_data)+ "\n") 
        #this one does not as it concatenates dict i.e different dict are not separated by a comma 
        json.dump(json_data,f) 
        return True 
    except BaseException as e: 
     print e 
     logging.debug('Error %s',e) 
     return True 

回答

1

你得到正确的数据,但没有行分隔符...所以自己添加它

import json 
with open('deleteme', 'a') as fp: 
    json.dump('data', fp) 
    fp.write('\n')