Twitter Accounts Activity API Client Library for Python
Project description
Twitivity
Twitter Accounts Activity API Client Library for Python
- :key: Performs CRC validation
- :memo: Registers webhooks
- :sound: Subscribes to current user's context
- :headphones: Gets activities of the user in real time.
Usage
Refer to Twitter's getting started guide on how to create an application. Then set up dev environment label for the application.
Credentials
App
:arrow_right: Details
:arrow_right: Keys and Tokens
Add the credentials to the environment variables.
~$ export consumer_key=API_KEY
~$ export consumer_secret=API_SECRET_KEY
~$ export access_token=ACCESS_TOKEN
~$ export access_token_secret=ACCESS_TOKEN_SECRET
~$ export env_name=APP_ENV_NAME
Install & run ngrok.
~$ ./ngrok http 5000
Stream events in real time.
# stream_events.py
>>> from twitivity import Event
>>> import json
>>> class StreamEvent(Event):
CALLBACK_URL: str = "https://yourdomain.com/listener"
def on_data(self, data: json) -> None:
# process data
>>> stream_events = StreamEvent()
>>> stream_events.listen()
Setup
To register the callback URL run the program above alongside the one below. This will register your webhook URL and subscribe to activities. This only has to be setup once.
# configure.py
from twitivity import Activity
>>> account_activity = Activity()
>>> account_activity.register_webhook("https://youdomain.com/listener")
>>> account_activity.subscribe()
The registration will return json response
{
'id': '1198870971131686912', # webhook id
'url': 'https://1f4396a1.ngrok.io/twitter/callback',
'valid': True,
'created_timestamp': '2019-11-25 07:48:08 +0000'
}
Installation
~$ pip install twitivity
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
twitivity-0.1.2.tar.gz
(3.5 kB
view hashes)