Ant*_*ton 7 python twitter tweepy
我有一个工作脚本成功收集提到"stackoverflow"的推文.但是,我想在iPython中运行脚本(而不是执行一个单独的.py文件).理想情况下,我只想打开它ipyb文件,选择run all,让它运行一周左右(当然不关闭我的笔记本电脑),结果我有一个带有一周推文的.json文件.
这是我到目前为止:
from tweepy import Stream
from tweepy import OAuthHandler
from tweepy.streaming import StreamListener
access_token = "x"
access_token_secret = "x"
consumer_key = "x"
consumer_secret = "x"
# file name that you want to open is the second argument
save_file = open('data.json', 'a')
class listener(StreamListener):
def on_data(self, data):
print(data)
return True
def on_error(self, status):
print(status)
auth = OAuthHandler(consumer_key, consumer_secret)
auth.set_access_token(access_token, access_token_secret)
twitterStream = Stream(auth, listener())
twitterStream.filter(track=["stackoverflow"])
Run Code Online (Sandbox Code Playgroud)
将以下代码添加到现有代码中.'fetched_tweets.txt'是您要在其中保存以'a'(追加模式)打开的推文的文件名.
class StdOutListener(StreamListener):
def on_data(self, data):
#print data
with open('fetched_tweets.txt','a') as tf:
tf.write(data)
return True
def on_error(self, status):
print status
Run Code Online (Sandbox Code Playgroud)
您可以通过将输出重定向到文件来做到这一点:
在终端/ CMD中输入 python twitter_streaming.py > twitter_data.txt
用于附加到现有文件,>>而不是>。