diff --git a/main.py b/main.py index 9937da6..8650062 100644 --- a/main.py +++ b/main.py @@ -25,12 +25,15 @@ def startup_config(): def main(): startup_config() + reddit_object = get_subreddit_threads() length, number_of_comments = save_text_to_mp3(reddit_object) + download_screenshots_of_reddit_posts(reddit_object, number_of_comments, os.getenv("THEME")) - download_background() + download_background() chop_background_video(length) + make_final_video(number_of_comments) main() diff --git a/reddit/subreddit.py b/reddit/subreddit.py index 353afff..e221b43 100644 --- a/reddit/subreddit.py +++ b/reddit/subreddit.py @@ -26,13 +26,9 @@ def get_subreddit_threads(): threads = subreddit.hot(limit=25) submission = list(threads)[random.randrange(0, 25)] print_substep(f"Video will be: {submission.title} :thumbsup:") + + content = build_content_comments(submission) - content = { 'thread_url': submission.url, 'thread_title': submission.title } - content["comments"] = [{ - "comment_body": top_level_comment.body, - "comment_url": top_level_comment.permalink, - "comment_id": top_level_comment.id, - } for top_level_comment in submission.comments] print_substep("Received AskReddit threads successfully.", style="bold green") @@ -67,4 +63,23 @@ def choose_subreddit(reddit): subreddit = reddit.subreddit("AskReddit") print_substep("Subreddit not defined. Using AskReddit.") - return subreddit \ No newline at end of file + return subreddit + +def build_content_comments(submission): + try: + content = { 'thread_url': submission.url, 'thread_title': submission.title } + content["comments"] = [] + + for top_level_comment in submission.comments: + content["comments"].append( + { + "comment_body": top_level_comment.body, + "comment_url": top_level_comment.permalink, + "comment_id": top_level_comment.id, + } + ) + + except AttributeError as e: + pass + + return content \ No newline at end of file diff --git a/video_creation/screenshot_downloader.py b/video_creation/screenshot_downloader.py index 82448d1..e2ad5e9 100644 --- a/video_creation/screenshot_downloader.py +++ b/video_creation/screenshot_downloader.py @@ -20,7 +20,8 @@ def download_screenshots_of_reddit_posts(reddit_object, screenshot_num, theme): with sync_playwright() as p: print_substep("Launching Headless Browser...") - browser, context = p.chromium.launch(), browser.new_context() + browser = p.chromium.launch() + context = browser.new_context() page = context.new_page() if theme.casefold() == "dark":