0
我想過濾Twitter的實時鳴叫,我有這個列表關鍵字= [「亞歷克斯」,「愛」,「討厭」,「飢餓」 ,「開心」]我想獲得具有「亞歷克斯」的推文並且至少有一個來自給定列表的關鍵字。我的代碼在運行時處於低位,它跟蹤包含列表中任何單詞的推文。再次記住,我希望「亞歷克斯」作爲主要跟蹤關鍵詞,推文應該有「亞歷克斯」,並且至少應該包括「愛」,「討厭」,「飢餓」,「快樂」等單詞中的一個。獲取鳴叫,在Python中有一個特定的關鍵字和其他可選的關鍵字
from tweepy import Stream
from tweepy import OAuthHandler
from tweepy.streaming import StreamListener
import json
# consumer key, consumer secret, access token, access secret.
ckey = "xxxxxxxxxxxxxxx"
csecret = "xxxxxxxxxxxxxxxxxx"
atoken = "xxxxxxxxxxxxxxxxxx"
asecret = "xxxxxxxxxxxxxxxxxxx"
class listener(StreamListener):
def on_data(self, data):
all_data = json.loads(data)
tweet = all_data["text"]
username = all_data["user"]["screen_name"]
out = open('out1.txt', 'a')
out.write(tweet.encode('utf-8'))
out.write('\n')
out.close()
print username, " :: ", tweet
return True
def on_error(self, status):
print status
auth = OAuthHandler(ckey, csecret)
auth.set_access_token(atoken, asecret)
keywords = ["Alex", "love","hate","hungry","happy"]
twitterStream = Stream(auth, listener())
twitterStream.filter(track=keywords, languages=["en"])