Social Media Posting
You need to have access to the version V1 of the Twitter API.
The consumer key, secret and access token/secret are stored in the environment.
import os
import tweepy
def post_twitter(message, image):
consumer_key = os.environ["TWITTER_CONSUMER_KEY"]
consumer_secret = os.environ["TWITTER_CONSUMER_SECRET"]
access_token = os.environ["TWITTER_ACCESS_TOKEN"]
access_token_secret = os.environ["TWITTER_ACCESS_TOKEN_SECRET"]
twitter_auth_keys = {
"consumer_key": consumer_key,
"consumer_secret": consumer_secret,
"access_token": access_token,
"access_token_secret": access_token_secret
}
auth = tweepy.OAuthHandler(
twitter_auth_keys['consumer_key'],
twitter_auth_keys['consumer_secret']
)
auth.set_access_token(
twitter_auth_keys['access_token'],
twitter_auth_keys['access_token_secret']
)
# Authenticate with the API
api = tweepy.API(auth)
# Upload the picture on Twitter
media = api.media_upload(image)
# Post tweet with image
api.update_status(status=message, media_ids=[media.media_id])