
Iran War Media Monitor recopila artículos de noticias que cubren la guerra estadounidense-israelí contra Irán y aplica análisis de sentimiento para descubrir quién apoya y quién se opone a la guerra.

Este proyecto monitorea la cobertura mediática de la guerra entre Irán, Israel y Estados Unidos.
Puede usar este repositorio para:
Puede leer el análisis técnico completo aquí. En resumen, Iran Media Monitor ejecuta dos flujos de trabajo.
El primer flujo ejecuta el scraper que recopila metadatos y artículos de noticias de fuentes RSS. La fuente está configurada a Google RSS, pero puede cambiarla en rss.py.
El segundo flujo realiza análisis de sentimiento en los artículos recopilados y los actualiza o inserta.

El proyecto usa MongoDB para almacenar artículos. Use Docker para crear una instancia de MongoDB.
Se recopilan los siguientes datos:
{
"collectionDate": str(datetime.now(timezone.utc).strftime("%Y-%m-%d %H:%M:%S")),
"processed": False,
"title": article.title,
"author": article.authors,
"publishedAt": str(article.publish_date),
"publisher": publisher,
"language": article.meta_lang,
"sourceUrl":article.source_url,
"summary":article.summary,
"keywords": article.keywords,
"description": article.meta_description,
"bodyText":article.text,
}
Ejecute rss.py para obtener una lista de los artículos más recientes desde la fuente RSS.
Ejecute scraper.py para obtener URLs desde Google RSS y extraer los artículos.
Use sentiment.py para realizar análisis de sentimiento en artículos no procesados. El campo process se establece en True cuando un documento ha recibido una puntuación de sentimiento.