runnig

twitter stream

Jun 5th, 2013
168
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.88 KB | None | 0 0
  1. import oauth2 as oauth
  2. import urllib2 as urllib
  3.  
  4. # See Assignment 1 instructions or README for how to get these credentials
  5. access_token_key = "XX"
  6. access_token_secret = "XX"
  7.  
  8. consumer_key = "XX"
  9. consumer_secret = "XX"
  10.  
  11. _debug = 1
  12.  
  13. oauth_token    = oauth.Token(key=access_token_key, secret=access_token_secret)
  14. oauth_consumer = oauth.Consumer(key=consumer_key, secret=consumer_secret)
  15.  
  16. signature_method_hmac_sha1 = oauth.SignatureMethod_HMAC_SHA1()
  17.  
  18. http_method = "GET"
  19.  
  20.  
  21. http_handler  = urllib.HTTPHandler(debuglevel=_debug)
  22. https_handler = urllib.HTTPSHandler(debuglevel=_debug)
  23.  
  24. '''
  25. Construct, sign, and open a twitter request
  26. using the hard-coded credentials above.
  27. '''
  28. def twitterreq(url, method, parameters):
  29.   req = oauth.Request.from_consumer_and_token(oauth_consumer,
  30.                                              token=oauth_token,
  31.                                              http_method=http_method,
  32.                                              http_url=url,
  33.                                              parameters=parameters)
  34.  
  35.   req.sign_request(signature_method_hmac_sha1, oauth_consumer, oauth_token)
  36.  
  37.   headers = req.to_header()
  38.  
  39.   if http_method == "POST":
  40.     encoded_post_data = req.to_postdata()
  41.   else:
  42.     encoded_post_data = None
  43.     url = req.to_url()
  44.  
  45.   opener = urllib.OpenerDirector()
  46.  
  47.   proxy = urllib.ProxyHandler({'https': 'http://168.219.61.252:8080'})    
  48.   opener = urllib.build_opener(proxy)    
  49.   urllib.install_opener(opener)    
  50.   opener.add_handler(http_handler)    
  51.   opener.add_handler(https_handler)
  52.  
  53.   response = opener.open(url, encoded_post_data)
  54.  
  55.   return response
  56.  
  57. def fetchsamples():
  58.   url = "https://stream.twitter.com/1/statuses/sample.json"
  59.   parameters = []
  60.   response = twitterreq(url, "GET", parameters)
  61.   for line in response:
  62.     print line.strip()
  63.  
  64. if __name__ == '__main__':
  65.   fetchsamples()
Add Comment
Please, Sign In to add comment