TwitterAPI is a Python package for accessing Twitter's REST API and Streaming API. It supports OAuth 1.0 and OAuth 2.0 authentication. And, it works with the latest Python versions in both 2.x and 3.x branches.
From the command line:
pip install TwitterAPI
- An Introduction
- Authentication
- Error Handling
- Paging Results
- Tiny Examples
- Fault Tolerant Streams and Pages
[See TwitterAPI/examples for working examples.]
First, authenticate with your application credentials:
from TwitterAPI import TwitterAPI api = TwitterAPI(consumer_key, consumer_secret, access_token_key, access_token_secret)
Tweet something:
r = api.request('statuses/update', {'status':'This is a tweet!'}) print(r.status_code)
Get tweet by its id:
r = api.request('statuses/show/:%d' % 210462857140252672) print(r.text)
Get some tweets:
r = api.request('search/tweets', {'q':'pizza'}) for item in r: print(item)
Stream tweets from New York City:
r = api.request('statuses/filter', {'locations':'-74,40,-73,41'}) for item in r: print(item)
Notice that request()
works with both REST and Streaming API endpoints. Usually request()
takes two arguments: a Twitter endpoint and a dictionary of endpoint parameters. The above examples use get_iterator()
to consume each tweet object. The iterator knows how to iterate both REST and Streaming API results.
You also have access to the response object returned by request()
. From a response object r
you can get the raw response with r.text
and the HTTP status code with r.status_code
. See the requests library documentation for more details.
Command-Line Utility (examples/cli)