im пытается запустить скрипт python, который выполняет простой поиск twitter с tweepy. Я хочу, чтобы включить/выключить функцию поиска через сообщения OSC из Supercollider. Конечная цель состоит в том, чтобы остановить триггер OSC и перезапустить функцию поиска.Сброс дорожки Tweepy с помощью OSC trigger
В настоящее время, похоже, скрипт не может прослушивать как поток твиттера, так и сообщения OSC. Я пытаюсь объединить твипичный базовый код streamlistener и коды py_SC basic_receive.
Вот что я придумал:
import tweepy
from tweepy.streaming import StreamListener
from tweepy import OAuthHandler
from tweepy import Stream
import threading
import OSC
import time, threading
auth/api
#from basic_receive.py
receive_address = '127.0.0.1', 9000
s = OSC.OSCServer(receive_address)
def printing_handler(addr,tags,stuff,source):
global word
word = stuff[0]
print word
return
s.addMsgHandler("/print", printing_handler)
st = threading.Thread(target = s.serve_forever)
st.start()
try:
while 1:
time.sleep(1)
except KeyboardInterrupt :
print "\nClosing OSCServer."
s.close()
print "Waiting for Server-thread to finish"
st.join() ##!!!
print "Done"
#from Tweepy
class StdOutListener(StreamListener):
global word
def __init__(self, api=None):
super(StdOutListener, self).__init__()
self.num_tweets = 0
def on_status(self, status):
text = status.text
print text
self.num_tweets = self.num_tweets + 1
if self.num_tweets > 1000:
return False
elif word == 'haha':
return False
else:
return True
def on_error(self, status):
print(status)
return True
def track():
stream = Stream(auth, listener)
stream.filter(track = ['food', 'love'])
return
if __name__ == '__main__':
listener = StdOutListener()
track()
printing_handler()
Спасибо jm_____, что определенно нужно больше работы! будем держать вас в курсе :) –