""" Simple example script to demonstrate the YouTube processing workflow. """ import os import sys from dotenv import load_dotenv # Load environment variables load_dotenv() def run_example(): """Run a simple example of the workflow.""" print("YouTube Processing Workflow - Simple Example") print("=" * 55) # Check if API keys are configured missing_keys = [] if not os.getenv("PERPLEXITY_API_KEY") and not os.getenv("OPENAI_API_KEY"): missing_keys.append("PERPLEXITY_API_KEY or OPENAI_API_KEY") if missing_keys: print("Missing required configuration:") for key in missing_keys: print(f" - {key}") print(f"\nPlease add these to your .env file and try again.") print(f" See env.example for reference.") return False print("Configuration looks good!") # Example parameters youtube_url = "https://www.youtube.com/watch?v=WepSY1rgoys" # User's video target_language = "English" summarization_prompt = "Summarize in 5 bullet points for students to revise quickly" print(f"\nProcessing: {youtube_url}") print(f"Target Language: {target_language}") print(f"Summary Prompt: {summarization_prompt}") print(f"\nRunning workflow...") try: from workflow import YouTubeProcessingWorkflow # Initialize workflow workflow = YouTubeProcessingWorkflow() # Process the video results = workflow.process_youtube_video( youtube_url=youtube_url, target_language=target_language, summarization_prompt=summarization_prompt, workflow_metadata={ "example_run": True, "source": "example.py" } ) # Print summary workflow.print_workflow_summary(results) return results["success"] except ImportError as e: print(f"Import error: {str(e)}") print(f" Please make sure all dependencies are installed:") print(f" pip install -r requirements.txt") return False except Exception as e: print(f"Error running example: {str(e)}") return False def print_usage(): """Print usage instructions.""" print("Usage Options:") print("=" * 30) print("1. Run simple example:") print(" python example.py") print("") print("2. Run demo with multiple examples:") print(" python demo.py") print("") print("3. Run command line workflow:") print(" python workflow.py ") print("") print("4. Start REST API server:") print(" python api.py") print("") print("5. Run tests:") print(" python test.py") print("") print("Example CLI usage:") print(' python workflow.py "https://www.youtube.com/watch?v=example" "Spanish" "Summarize in 3 bullet points"') def main(): """Main function.""" if len(sys.argv) > 1 and sys.argv[1] == "--help": print_usage() return success = run_example() if success: print(f"\nExample completed successfully!") else: print(f"\nExample failed. Check the errors above.") print_usage() if __name__ == "__main__": main()