Random Tweepy API Operations Executor

  • Share this:

Code introduction


This code defines a function that randomly performs certain API operations provided by Tweepy, such as getting user information, searching tweets, creating and deleting tweets, etc.


Technology Stack : Tweepy

Code Type : The type of code

Code Difficulty :


                
                    
import tweepy
import random

def tweet_random_quote(api_key, api_secret_key, access_token, access_token_secret):
    # Define the list of APIs to use
    api_functions = [
        "api.home_timeline(count=10)",
        "api.search(q='Python', count=5)",
        "api.get_user(screen_name='twitterapi')",
        "api.create_status(status='Hello, world!')",
        "api.destroy_status(status_id=1234567890)"
    ]
    
    # Randomly select an API function to use
    selected_api = random.choice(api_functions)
    
    # Initialize tweepy API
    auth = tweepy.OAuthHandler(api_key, api_secret_key)
    auth.set_access_token(access_token, access_token_secret)
    api = tweepy.API(auth)
    
    # Execute the selected API function
    if selected_api == "api.home_timeline(count=10)":
        tweets = api.home_timeline(count=10)
        print("Last 10 tweets:")
        for tweet in tweets:
            print(tweet.text)
    elif selected_api == "api.search(q='Python', count=5)":
        tweets = api.search(q='Python', count=5)
        print("5 Python-related tweets:")
        for tweet in tweets:
            print(tweet.text)
    elif selected_api == "api.get_user(screen_name='twitterapi')":
        user = api.get_user(screen_name='twitterapi')
        print("User info for 'twitterapi':")
        print(user.name, user.screen_name, user.description)
    elif selected_api == "api.create_status(status='Hello, world!')":
        try:
            status = api.create_status(status='Hello, world!')
            print("Tweet created:", status.text)
        except tweepy.TweepError as e:
            print("Failed to create tweet:", e)
    elif selected_api == "api.destroy_status(status_id=1234567890)":
        try:
            api.destroy_status(status_id=1234567890)
            print("Tweet deleted")
        except tweepy.TweepError as e:
            print("Failed to delete tweet:", e)

# Example usage
# tweet_random_quote('YOUR_API_KEY', 'YOUR_API_SECRET_KEY', 'YOUR_ACCESS_TOKEN', 'YOUR_ACCESS_TOKEN_SECRET')                
              
Tags: