#+TITLE: Práctica 1
#+SUBTITLE: Recuperación de Información
#+AUTHOR: Amin Kasrou Aouam
#+DATE: 2020-10-25
#+PANDOC_OPTIONS: template:~/.pandoc/templates/eisvogel.latex
#+PANDOC_OPTIONS: listings:t
#+PANDOC_OPTIONS: toc:t
#+PANDOC_METADATA: lang=es
#+PANDOC_METADATA: titlepage:t
#+PANDOC_METADATA: listings-no-page-break:t
#+PANDOC_METADATA: toc-own-page:t
#+PANDOC_METADATA: table-use-row-colors:t
#+PANDOC_METADATA: logo:/home/coolneng/Photos/Logos/UGR.png
* Práctica 1

En esta práctica, vamos a obtener información de una serie de documentos usando /Apache Tika/.

** Ejecución

Implementamos la práctica usando /Java/ como lenguaje de programación, y /Maven/ como herramienta de gestión del proyecto.

En el caso que deseemos utilizar /Maven/, debemos ejecutar los siguientes comandos:

1. Compilar el proyecto
   
#+BEGIN_SRC shell
mvn compile
#+END_SRC

2. Ejecutar el proyecto

#+BEGIN_SRC shell
mvn exec:java -Dexec.mainClass="org.RI.P1.AnalyzeDirectory" -Dexec.args="data metadata"
#+END_SRC

Debemos modificar el argumento *metadata* según la salida que deseemos:

- metadata: obtenemos la información de los archivos (nombre, codificación, tipo)
- links: obtenemos la lista de enlaces de cada archivo
- frequency: se guarda la frecuencia de las palabras de cada documento en un archivo (se encuentran en la carpeta output).
  
** Implementación

Lamentablemente, no hemos podido implementar la funcionalidad del gráfico para comprobar si se cumple la ley de Zipf. Además de ello, nuestro /tokenizer/ no funciona demasiado bien debido al uso de una expresión regular que no toma en cuenta todos los casos.
