Lee este documento en: English
Aplicación dividida en dos servicios REST que, a partir de ciertos temas, busca mensajes en Twitter donde se hable de estos temas, para posteriormente analizar el sentimiento de cada mensaje.
Así, tenemos un servicio REST encargado de buscar los temas y los mensajes sobre estos, así como de guardarlos en la base de datos, y otro servicio encargado del análisis sentimental de texto.
Los temas son buscados utilizando la herramienta ArchMS, de la Universidad de Murcia, donde obtenemos información de HCE (Historia Clínica Electrónica).
Los comentarios sobre temas son buscandos utilizando Twitter4j, una librería no oficial de Java, que permite un fácil acceso a la API de Twitter.
El análisis sentimental de texto se ha realizado mediante múltiples algoritmos:
- Basado en un diccionario de palabras propio.
- Utilizando la librería de Apache OpenNLP.
- Utilizando la librería de Stanford CoreNLP.
Ambos servicios funcionan de forma independiente. El servicio de análisis sentimental de texto puede ser fácilmente conectado y utilizado por otros servicios, a través de peticiones a su servicio REST.
El servicio de obtención de comentarios permite el registro de usuarios. Estos usuarios pueden añadir y eliminar favoritos. Estos son personas de las redes sociales, cuyos comentarios tendrán prioridad sobre el resto.
Estas instrucciones te permitirán obtener una copia del proyecto en funcionamiento en tu máquina local.
El proyecto se ha realizado utilizando Java.
Ambos servicios están desplegados sobre Tomcat.
En definitiva:
Java
Tomcat
Herramientas utilizadas para la construcción del proyecto
Sistema
- Maven - Manejador de dependencias
- ArchMS - Herramienta de la Universidad de Murcia, para la obtención de temas
Redes sociales
- Twitter4j - Librería para acceder a Twitter
Algoritmos analizados de sentimiento
- Apache OpenNLP - Librería para el análisis de sentimiento de textos
- Stanford CoreNLP - Librería para el análisis de sentimiento de textos
Bases de datos
- MySQL - Base de datos para la conexión utilizando ArchMS
- Neo4j - Base de datos para la persistencia de información
Test
- JUnit - Test sobre el código
- REST-assured - Test sobre servicios REST
- Swagger - Interfaz interactiva de los servicios REST
Interfaz
- HTML5 - Interfaz en HTML
- CSS3 - Interfaz decorada con CSS
- JavaScript - Interfaz usando JS
- AngularJS - Framework de JS
- José Fernándo Fernández Espín - Desarrollo inicial
- Diego Valera - Desarrollo y completado posterior - Di3GO95
Este proyecto está bajo la licencia MIT - mira el archivo LICENSE.md para detalles.