Sami2000's picture
Upload 7 files
12d8780 verified
from fastapi import FastAPI, Query
from news_fetcher import fetch_news
from keyword_extractor import extract_keywords
from reddit_search import search_reddit
from sentiment_analyzer import analyze_sentiment
from results_compiler import compile_results
app = FastAPI()
@app.get("/")
def read_root():
return {"message": "Hello, this is your INDOPACOM Sentiment App backend!"}
@app.get("/run_workflow")
def run_workflow(query: str = Query("US Army INDOPACOM")): # <--- add Query parameter
articles = fetch_news(query=query) # <--- pass user query to fetch_news
print(f"Fetched {len(articles)} articles for query: {query}")
keywords = extract_keywords(articles)
print(f"Extracted keywords: {keywords}")
reddit_data = search_reddit(keywords)
print(f"Reddit data: {reddit_data}")
sentiment = analyze_sentiment(reddit_data)
print(f"Sentiment: {sentiment}")
results = compile_results(articles, keywords, reddit_data, sentiment)
return results