rest_api using tweets are not dumping into file in

2019-06-06 04:33发布

according to this code a file should be with 5000 tweets in this. But nothing is going into file and shows json serialization error.

here is the code

alltweet=[]
def rest_query_ex3():
    MAX_ID = None
    query = "(disease OR illness OR sickness)"
    file=open("tweetfile.txt", "a+")
    for it in range(50):
     tweets = myApi.search(q=query, count=100, max_id=MAX_ID)
     if tweets:
         MAX_ID = tweets[-1].id
         alltweet.extend(tweets)
    for tweet in alltweet:
        s=[tweet.text, tweet.id]
        file.write(json.dumps(s))
    file.close()

2条回答
别忘想泡老子
2楼-- · 2019-06-06 04:41
alltweet=[]

def rest_query_ex3():
    MAX_ID = None
    geo = "42.6525,-73.7572,200mi"
    query = "(disease)"
    file =open("tweetfile.txt", "a+")
    for it in range(1):
     tweets = myApi.search(q=query, geocode=geo, count=5, max_id=MAX_ID)
     if tweets:
         MAX_ID = tweets[-1].id
         alltweet.extend(tweets)
         #print type(alltweet)   #this is list type object
    for tweet in alltweet:
        file.write(json.dumps(str(tweet))) 
#converting into string remove sthe serializable error without adding a new class
        file.write('\n\n')
if __name__ == '__main__':
    rest_query_ex3()
查看更多
不美不萌又怎样
3楼-- · 2019-06-06 04:47
alltweet=[]

def rest_query_ex3():
    MAX_ID = None
    geo = "42.6525,-73.7572,200mi"
    query = "(disease)"
    file =open("tweetfile.txt", "a+")
    for it in range(1):
     tweets = myApi.search(q=query, geocode=geo, count=5, max_id=MAX_ID)
     if tweets:
         MAX_ID = tweets[-1].id
         alltweet.extend(tweets)
         #print type(alltweet)   #this is list type object
    for tweet in alltweet:
        file.write(json.dumps(tweet._json)) 
#converting into string remove sthe serializable error without adding a new class
        file.write('\n\n')
if __name__ == '__main__':
    rest_query_ex3()
查看更多
登录 后发表回答