· 8 years ago · Feb 01, 2017, 05:12 PM
1import time
2from time import sleep
3from datetime import datetime
4from twython import Twython
5from twython import TwythonStreamer
6from gpiozero import LED, Button
7
8
9APP_KEY = 'hhhh' # put twitter API Key here
10APP_SECRET = 'hhh' # put twitter API Secret here
11OAUTH_TOKEN = 'hhh-hhh' # twitter access token here
12OAUTH_TOKEN_SECRET = 'hhh' # twitter access token secret
13
14twitter = Twython(
15 APP_KEY,
16 APP_SECRET,
17 OAUTH_TOKEN,
18 OAUTH_TOKEN_SECRET
19)
20
21led_red = LED(9)
22led_green = LED(11)
23led_blue = LED(10)
24
25led_red.on()
26led_green.on()
27led_blue.on()
28
29class MyStreamer(TwythonStreamer):
30 def on_success(self, data):
31 if 'text' in data:
32 #print (data['text'].encode('utf-8'))
33 tweet_text = (data['text'])
34 tweeter = data['user']['screen_name']
35 timestamp = datetime.now().strftime("%m-%d-%Y %H:%M")
36 print (tweet_text)
37 print (tweeter)
38 twitter.update_status(status='Yay, @'+ tweeter +' just tweeted me at ' + timestamp + '!\nAutomated with Twython')
39 if tweet_text.find('#red') != -1:
40 led_red.on()
41 led_green.off()
42 led_blue.off()
43 elif tweet_text.find('#green') != -1:
44 led_red.off()
45 led_green.on()
46 led_blue.off()
47 elif tweet_text.find('#blue') != -1:
48 led_red.off()
49 led_green.off()
50 led_blue.on()
51 elif tweet_text.find('#bleen') != -1:
52 led_red.off()
53 led_green.on()
54 led_blue.on()
55 elif tweet_text.find('#purple') != -1:
56 led_red.on()
57 led_green.off()
58 led_blue.on()
59 elif tweet_text.find('#yellow') != -1:
60 led_red.on()
61 led_green.on()
62 led_blue.off()
63
64
65 def on_error(self, status_code, data):
66 print (status_code)
67
68 # Want to stop trying to get data because of the error?
69 # Uncomment the next line!
70 self.disconnect()
71
72stream = MyStreamer(APP_KEY, APP_SECRET,
73 OAUTH_TOKEN, OAUTH_TOKEN_SECRET)
74stream.statuses.filter(track='@CodeJacksonMI')