Created
October 11, 2014 15:09
-
-
Save jengel3/eb1859380d1fa3aa3cf7 to your computer and use it in GitHub Desktop.
Twitter Favoriter
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
twitter_api_key="XXXX" | |
twitter_api_secret="XXXX" | |
twitter_access_key="XXXX" | |
twitter_access_secret="XXXX" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
def get(value): | |
config = {} | |
execfile('config.conf', config) | |
return config[value] | |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import config | |
import tweepy | |
def get_api(): | |
return tweepy.API(auth) | |
def get_auth(): | |
consumer_key = config.get("twitter_api_key") | |
consumer_secret = config.get("twitter_api_secret") | |
access_token_key = config.get("twitter_access_key") | |
access_token_secret = config.get("twitter_access_secret") | |
if consumer_key is None or consumer_secret is None or access_token_key is None or access_token_secret is None: | |
return None | |
auth = tweepy.OAuthHandler(bytes(consumer_key), bytes(consumer_secret)) | |
auth.set_access_token(bytes(access_token_key), bytes(access_token_secret)) | |
return auth | |
auth = get_auth() | |
api = get_api() | |
def new_stream(): | |
s = StreamWatcherListener() | |
stream = tweepy.Stream(auth, s, timeout=None) | |
stream.filter(track=['#blackhawks"]) | |
class StreamWatcherListener(tweepy.StreamListener): | |
def on_status(self, status): | |
try: | |
print status.text | |
api.create_favorite(status.id_str) | |
except: | |
pass | |
def on_error(self, status_code): | |
from time import sleep | |
print 'An error has occurred! Status code = %s' % status_code | |
if str(status_code) == "420": | |
print 'Waiting 3 seconds before restarting streams.' | |
sleep(3000) | |
return True | |
def on_timeout(self): | |
print 'Streaming API timed out...' |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment