AI-News-Agent / app.py
OxbridgeEconomics
consolidate the code
0619bbd
raw
history blame contribute delete
No virus
1.11 kB
"""Module that initializes the Flask application."""
import logging
import os
import nltk
from dotenv import load_dotenv
from flask import Flask
from routes import main
load_dotenv(".env")
def download_nltk_resources():
try:
# Check if 'punkt_tab' is available
nltk.data.find('tokenizers/punkt_tab')
except LookupError:
# If not present, download it
print("Downloading 'punkt_tab' tokenizer...")
nltk.download('punkt_tab')
nltk.download('punkt')
print("'punkt_tab' tokenizer has been downloaded.")
else:
print("'punkt_tab' tokenizer is already available.")
def create_app():
"""
Creates and configures the Flask application.
Returns:
Flask: The configured Flask application.
"""
flask_app = Flask(__name__)
logging.basicConfig(
format='%(asctime)s - %(levelname)s - %(funcName)s - %(message)s')
download_nltk_resources()
logging.getLogger().setLevel(os.environ.get("LOG_LEVEL", "INFO").upper())
flask_app.register_blueprint(main.bp)
return flask_app
app = create_app()