-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathgithub.auto.py
30 lines (25 loc) · 1.24 KB
/
github.auto.py
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import schedule
import time
from datetime import datetime
from accounts.select_accounts import select_twitter_account
from accounts.get_credentials import get_twitter_account_details, get_all_twitter_account_details
from accounts.topics import get_topics_by_username
from bot.auth_provider import get_twitter_client
from bot.tweet_poster import post_tweet
from gpt.generate_prompt import create_tweet_prompt
from gpt.gpt_client import use_gpt
from utils.print_color_utils import print_header, print_error, print_success, print_warning, print_info, print_highlight, print_debug, get_user_input
def single_account_poster_helper(username):
try:
credentials = get_twitter_account_details(username=username)
topics = get_topics_by_username(username=username)
prompt = create_tweet_prompt(keywords=topics)
tweet = use_gpt(prompt=prompt)
print(tweet)
client = get_twitter_client(account_data=credentials)
post_tweet(client=client, tweet=tweet)
print_success(f"Successfully posted tweet for {username} at {datetime.now().strftime('%H:%M')}")
except Exception as e:
print_error(f"Failed to post tweet: {str(e)}")
if __name__ == "__main__":
single_account_poster_helper("poojan_goyani")