|
import tweepy |
|
import openai |
|
import time |
|
import os |
|
|
|
|
|
def authenticate_twitter(): |
|
auth = tweepy.OAuth1UserHandler( |
|
consumer_key=os.getenv('TWITTER_API_KEY'), |
|
consumer_secret=os.getenv('TWITTER_API_SECRET_KEY'), |
|
access_token=os.getenv('TWITTER_ACCESS_TOKEN'), |
|
access_token_secret=os.getenv('TWITTER_ACCESS_TOKEN_SECRET') |
|
) |
|
api = tweepy.API(auth) |
|
return api |
|
|
|
|
|
def authenticate_openai(): |
|
openai.api_key = os.getenv('OPENAI_API_KEY') |
|
|
|
|
|
def generate_tweet(): |
|
response = openai.Completion.create( |
|
engine="text-davinci-003", |
|
prompt="Create a tweet in the style of a humorous AI agent, keeping it casual and engaging.", |
|
max_tokens=50 |
|
) |
|
tweet = response.choices[0].text.strip() |
|
return tweet |
|
|
|
|
|
def send_tweet(api, tweet): |
|
try: |
|
api.update_status(tweet) |
|
print(f"Tweet sent: {tweet}") |
|
except tweepy.TweepError as e: |
|
print(f"Error: {e}") |
|
|
|
|
|
def main(): |
|
twitter_api = authenticate_twitter() |
|
authenticate_openai() |
|
|
|
while True: |
|
tweet = generate_tweet() |
|
print(f"Generated Tweet: {tweet}") |
|
send_tweet(twitter_api, tweet) |
|
time.sleep(1800) |
|
|
|
if __name__ == "__main__": |
|
main() |
|
|
|
|
|
|