我想保存阿拉伯推文与所有相关的数据,如推文id,用户位置,用户追随者等。
    from tweepy import Stream
    from tweepy import OAuthHandler
    from tweepy.streaming import StreamListener
     import json
     import sys
    import codecs
    import time
  ConsumerKey = ' '
  ConsumerSecret = ' '
  AccessToken = ' '
  AccessTokenSecret = ' '
    non_bmp_map = dict.fromkeys(range(0x10000, sys.maxunicode + 1), 0xfffd)
 class StdOutListener(StreamListener):
def on_data(self, data):
    try:
       all_data = json.loads(data)
        tweet = all_data["text"]
        print(tweet.translate(non_bmp_map))
        SaveFile = codecs.open('ArabictwitDB.txt','a', "utf-8")
        SaveFile.write(all_data)
            SaveFile.write('\n')
        SaveFile.close()
        return True
    except BaseException, e:
        print 'failed',str(e)
        time.sleep(5)
def on_error(self, status):
    print status
    if __name__ == '__main__':
l = StdOutListener()
auth = OAuthHandler(ConsumerKey, ConsumerSecret)
auth.set_access_token(AccessToken, AccessTokenSecret)
    stream = Stream(auth, l)
stream.filter(track=[unicode("رمضان","utf-8")])它显示了这个错误
    failed coercing to Unicode: need string or buffer, dict found但如果我换掉all_data
     SaveFile.write(all_data)使用推文
    SaveFile.write(tweet)它只保存阿拉伯文本如何将所有数据保存到一个文件中??
发布于 2018-02-27 11:01:27
如果不需要格式化它,只需
 SaveFile.write(json.dumps(all_data))但既然你什么都没改变..。为什么不直接保存data呢?
或者,您可以像访问tweet一样访问每个值
https://stackoverflow.com/questions/49000392
复制相似问题