Skip to main content

Version-agnostic core for brittle_wit package

Project description

https://travis-ci.org/jbn/brittle_wit_core.svg?branch=master https://ci.appveyor.com/api/projects/status/69kj3prrrieyp8q2/branch/master?svg=true https://coveralls.io/repos/github/jbn/brittle_wit_core/badge.svg?branch=master https://img.shields.io/pypi/v/brittle_wit_core.svg https://img.shields.io/badge/license-MIT-blue.svg https://img.shields.io/pypi/pyversions/brittle_wit_core.svg

What is this?

This package contains the core of brittle_wit, a twitter lib for python. It works with Python 2.7, whereas brittle_wit does not. It’s extracted from the main library so that you can reuse this core code for authentication flows (e.g. on GAE).

Sample Authentication Flow with requests

from requests import request
from brittle_wit_core import (AppCredentials,
                              obtain_request_token,
                              extract_access_token,
                              redirect_url,
                              obtain_access_token,
                              extract_request_token)

# Loads via TWITTER_APP_KEY, TWITTER_APP_SECRET environmental variables.
APP_CRED = AppCredentials.load_from_env()

# Get an access token.
twitter_req, headers = obtain_request_token(APP_CRED)
resp = request(twitter_req.method,
               twitter_req.url,
               params=twitter_req.params,
               headers=headers)
oauth_token, oauth_secret = extract_request_token(resp.status_code,
                                                  resp.content.decode('utf8'))

# Redirect the user to a PIN page.
url = redirect_url(oauth_token)
print(url)
pin = input("PIN: ").strip()


# Turn their pin response into an access token.
twitter_req, headers = obtain_access_token(APP_CRED, oauth_token, pin)

resp = request(twitter_req.method,
               twitter_req.url,
               params=twitter_req.params,
               headers=headers)
d = extract_access_token(resp.status_code, resp.content.decode('utf8'))
print(d)

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

brittle_wit_core-0.0.4.tar.gz (13.2 kB view hashes)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page