Python Tweetstream每10分钟统计一次tweets并写入文件

Python Tweetstream每10分钟统计一次tweets并写入文件,python,twitter,tweetstream,Python,Twitter,Tweetstream,我有一个小脚本,它使用tweetstream获取tweet的数量并将其写入文件,但我看到有50/s的限制,可能是因为文件IO,我想尝试将值存储在变量中,然后,每10分钟用变量的值写入文件,我该怎么做 #!/usr/bin/python import tweetstream import sys print sys.argv twitterUsername = "username" twitterPassword = "password" twitterWordFilter = sys.argv[

我有一个小脚本,它使用tweetstream获取tweet的数量并将其写入文件,但我看到有50/s的限制,可能是因为文件IO,我想尝试将值存储在变量中,然后,每10分钟用变量的值写入文件,我该怎么做

#!/usr/bin/python
import tweetstream
import sys
print sys.argv
twitterUsername = "username"
twitterPassword = "password"
twitterWordFilter = sys.argv[1]

try:
    with tweetstream.FilterStream(twitterUsername, twitterPassword,track=twitterWordFilter) as stream:
        for tweet in stream:
            file = open('/monitor/'+str(sys.argv[2])+'.txt','w+')
            file.write(str(stream.count))
            file.close
            #print tweet #Use for raw output

except tweetstream.ConnectionError, e:
    print "Disconnected from twitter. Reason:", e.reason

@tdelaney的评论是正确的


先计时!文件写入在命中磁盘之前已经被python(实际上是clib)和操作系统缓存。更有可能的是推特流速度很慢。您可以在写入和打印差异之前和之后获得时间。顺便说一句,您还需要close文件.close()中的牛仔腿。由于您只是一次又一次地打开同一个文件,所以只需在for循环之外打开它一次


先计时!文件写入在命中磁盘之前已经被python(实际上是clib)和操作系统缓存。更有可能的是推特流速度很慢。您可以在写入和打印差异之前和之后获得时间。顺便说一句,您还需要close
file.close()上的牛仔腿。由于您只是一次又一次地打开同一个文件,所以只需在for循环之外打开它一次。