Download Twecoll - EVA FING

Document related concepts
no text concepts found
Transcript
Extracción de Datos usando Twecoll
Ofelia Cervantes
1
Twecoll
 Es una herramienta que permite extraer datos de
Twitter.
 Esta escrita en el lenguaje de programación Python.
 Utiliza la versión 1.1 del API REST de Twitter.
 Actualmente ofrece 6 funcionalidades:
1.
2.
3.
4.
5.
Obtiene los amigos de una cuenta Twitter.
Obtiene los amigos de los amigos de una cuenta Twitter.
Obtiene los tweets de una cuenta Twitter.
Obtiene los likes de una cuenta Twitter.
Genera una red en formato gml (Gephi), a partir de los datos
extraídos.
6. Obtiene el ID de una cuenta Twitter.
Ofelia Cervantes
Twecoll - Funcionalidades
 Basadas en el principio de sub comandos, la ejecución
de twecoll espera palabras clave que instruyen a
twecoll que hacer.
 Comandos:
o
o
o
o
o
o
init <cuenta>: Obtiene los amigos.
fetch <cuenta>: Obtiene los amigos de los amigos.
edgelist <cuenta>: Genera una red en formato GML.
tweets <cuenta>: Obtiene los tweets.
likes <cuenta>: Obtiene los likes.
resolve <cuenta>: Obtiene el ID de una cuenta Twitter.
Ofelia Cervantes
Twecoll – Tipos de Archivos
 Twecoll crea archivos y carpetas para almacenar los
datos.
fdat
img
.dat
.twt
.fav
.gml
.f
Ofelia Cervantes
Directorio que contiene archivos de los amigos de
amigos.
Directorio que contiene las imágenes de los amigos.
Extensión de detalles de cuenta (amigos, seguidores,
URL imagen. Para las cuentas de amigos).
Extensión de archivo de tweets (fecha de creación,
tweet).
Extensión de archivo de likes (id, fecha de creación, id
de usuario, nombre de usuario, tweet).
Extensión de archivo de red (nodos y aristas).
Extensión de archivo. Contiene datos de amigos.
Extracción de Datos - Twecoll
1. Crear un espacio de trabajo para almacenar los
archivos que serán descargados.
2. Preparar el entorno de trabajo



Asegurar que Python está instalado
Instalar un administrador de dependencias (get-pip)
Instalar la librería argparse.
3. Instalar Twecoll.
4. Obtener llaves de acceso a la aplicación.
5. Configurar Twecoll con las llaves obtenidas.
Ofelia Cervantes
Twecoll - Entorno de desarrollo
1. Crear un espacio de trabajo para almacenar los
archivos que serán descargados.
Crear una carpeta llamada “Twecoll”.
Ofelia Cervantes
Requerimientos de Python
1. Instalar un administrador de dependencias para
Python.
2. Instalar la librería argparse
(command line parsing module de Python)
Ofelia Cervantes
Twecoll – requerimientos de Python
Instalación del administrador de dependencias PIP (en
caso de no tenerlo…)
1. Descarga del instalador.
2. Ejecución del instalador con la línea de comandos.
Código fuente del instalador.
Ofelia Cervantes
Ejecución del instalador.
Twecoll – requerimientos de Python
1. Descarga del instalador:
•
•
•
•
Ingresar a la página https://bootstrap.pypa.io/get-pip.py.
Presionar la combinación de teclas “Ctrl+S”.
Seleccionar como directorio destino “Twecoll”.
Al indicar nombre del archivo escribir “get-pip.py”
Código fuente de pip.
Seleccionar “Todos los archivos”
Ofelia Cervantes
Twecoll – requerimientos de Python
2. Ejecución del instalador con la línea de comandos.
•
Abrir una ventana de línea de comandos.
–
–
•
Windows: Presionar la combinación de teclas “Windows+R” e Ingresar la
palabra “cmd” y presionar enter.
MacOSX: Presionar la combinación de teclas “CMD+Espacio” e Ingresar
la palabra “terminal” y presionar enter.
Ingresar al directorio “Twecoll” empleando el comando “cd
<directorio>”.
Ofelia Cervantes
Instalación de administrador de dependencias
2. Ejecución del instalador con la línea de comandos.
•
Escribir en la línea de comandos “python get-pip.py” y
presionar enter.
Ofelia Cervantes
Instalación de librería argparse
•
Abrir una ventana de línea de comandos.
–
–
Windows: Presionar la combinación de teclas “Windows+R” e Ingresar la
palabra “cmd” y presionar enter.
MacOSX: Presionar la combinación de teclas “CMD+Espacio” e Ingresar
la palabra “terminal” y presionar enter.
• Ingresar al directorio “Twecoll” empleando el comando:
“cd <directorio>”.
• Ejecutar el comando “python –m pip install argparse”
Instalación correcta de argparse
Ofelia Cervantes
Instalación & Configuración de Twecoll
1. Descarga del código fuente de Twecoll.
2. Ejecución prueba de Twecoll.
3. Configuración de Twecoll.
Ofelia Cervantes
Instalación de Twecoll
1. Descarga del código fuente de twecoll.
•
•
•
•
Ingresar a la pagina
https://github.com/jdevoo/twecoll/raw/master/twecoll.
Presionar la combinación de teclas “Ctrl+S”.
Seleccionar como directorio destino “Twecoll”.
Nombrar nombre del archivo escribir “twecoll.py”
Seleccionar “Todos los archivos”.
Código fuente de twecoll.
Ofelia Cervantes
Ejecución de Twecoll
2. Ejecución prueba de Twecoll.
•
Abrir una ventana de línea de comandos.
–
–
Windows: Presionar la combinación de teclas “Windows+R” e Ingresar la
palabra “cmd” y presionar enter.
MacOSX: Presionar la combinación de teclas “CMD+Espacio” e Ingresar
la palabra “terminal” y presionar enter.
• Ingresar al directorio “Twecoll” empleando el comando “cd
<directorio>”.
• Ejecutar el comando “python twecoll.py -h”, para verificar que
todo este correcto.
Twecoll funcionando correctamente.
Ofelia Cervantes
ATENCIÓN !!!
 Para acceder a los datos en Twitter,
es decir obtener el contenido de los
tweets, así como a los seguidores de
una cuenta, se requieren dos llaves:
 Consumer API Key
 Consumer API Secret
Ofelia Cervantes
Para poder usar Twecoll – obtención llaves
1. Crear una aplicación en twitter.
o Twecoll consume los datos de la API de twitter por
medio de una aplicación registrada en una cuenta.
2. Obtener el “Consumer API key” y el “Consumer API secret”
de la aplicación.
1. Configurar Twecoll con las claves generadas.
Ofelia Cervantes
Par obtener las llaves – es necesario crear una
aplicación en Twitter
1. Pasos para crear una aplicación en twitter –
parte 1
o Ingresar a la página http://apps.twitter.com y presionar
“Create New App”.
o Ingresar nombre, descripción y sitio web.
• Colocar cualquier nombre a la app,
• Dar la descripción deseada y
• Colocar cualquier url como website,
Debe ser dueño del sitio (solicitará
confirmación) o mejor no existir.
Ofelia Cervantes
Configurar Twecoll
1. Pasos para crear una aplicación en twitter –
parte 2
o Aceptar las condiciones de uso.
o Presionar “Create your Twitter application”.
Ofelia Cervantes
Obtener las llaves requeridas por Twecoll
2. Obtener el “API key” y el “API secret” de la
aplicación de Twitter recientemente creada
o Ingresar a la página http://apps.twitter.com e ingresar a la
aplicación creada previamente.
o Ingresar a la pestaña “Keys and Access Tokens” de la
aplicación.
o Copiar el “API key” y “API secret”.
Ofelia Cervantes
Configurar Twecoll
3. Configurar Twecoll con las claves generadas – parte 1
•
Abrir una ventana de línea de comandos.
–
–
Windows: Presionar la combinación de teclas “Windows+R” e Ingresar la
palabra “cmd” y presionar enter.
MacOSX: Presionar la combinación de teclas “CMD+Espacio” e Ingresar
la palabra “terminal” y presionar enter.
• Ingresar al directorio “Twecoll” empleando el comando “cd
<directorio>”.
• Ejecutar el comando “python twecoll.py resolve <cualquier
cuenta Twitter>” e ingresar el “API key” y “API key”.
Ofelia Cervantes
Configurar Twecoll
3. Configurar Wwecoll con las claves generadas – parte 2
o Ingresar a la página que se muestra en la consola.
o Presionar en “Autorizar la aplicación”.
o Copiar el código de autorización.
Ofelia Cervantes
Configurar Twecoll
3. Configurar Twecoll con las claves generadas – parte 3
o Ingresar el código de autorización.
o Presionar <enter>
Ofelia Cervantes
Ahora sí, pasemos a la acción
!
1. Extraer amigos de una cuenta
init
2. Extraer amigos de los amigos de una cuenta
fetch
(previo init)
3. Crear red en formato gml para Gephi
edgelist
4. Bajar contenido de los tweets de una cuenta
tweets
5. Descarga el tweet al que le dió like y fecha
likes
Ofelia Cervantes
Extracción de Amigos usando Twecoll
• Abrir una ventana de línea de comandos.
–
–
Windows: Presionar la combinación de teclas “Windows+R” e Ingresar la
palabra “cmd” y presionar enter.
MacOSX: Presionar la combinación de teclas “CMD+Espacio” e Ingresar
la palabra “terminal” y presionar enter.
• Ingresar al directorio “Twecoll” empleando el comando “cd
<directorio>”.
• Ejecutar el comando “python twecoll.py init <cuenta>”.
•
El comando extraerá los datos de cada amigo.
SOLO 180 peticiones/15 mins
Ofelia Cervantes
https://dev.twitter.com/rest/public/rate-limiting
Extracción de Amigos usando Twecoll
 Estructura del archivo .dat:
»
»
»
»
»
»
»
Identificador de cuenta Twitter del seguidor (amigo)
Nombre de cuenta.
Tipo de cuentas que sigue (friends).
Numero de cuentas seguidas por el amigo.
Numero de tweets emitidos por esa cuenta .
Fecha registro en Twitter.
URL de imagen de la cuenta.
Datos de cada amigo de la cuenta de origen
Ofelia Cervantes
Extracción de los Amigos de los Amigos




Seleccionar cuenta a analizar.
Descargar datos de los amigos.
Descargar datos de los amigos de los amigos
Crear la red en formato “gml” para visualizar posteriormente en
Gephi
https://twitter.com/dirtransitopue
Ofelia Cervantes
Extracción Amigos de los Amigos
Para descargar los datos de amigos de los amigos
Ejecutar el comando “python twecoll.py fetch <cuenta>”.
o
•
El comando genera una carpeta llamada “fdat” que contiene
archivos con extensión “.f” uno por amigo, los cuales contienen
los IDs de sus amigos.
Carpeta fdat con archivos
de información de cada
amigo
Ofelia Cervantes
Archivos de cada amigo.
Proceso lento … !
Cada archivo .f contiene los
ID´s de los Amigos de sus
amigos.
Creación de la red Amigos de los Amigos
Para crear la red en formato “gml”:
o Una vez obtenida la lista de los amigos de una cuenta (init)
o Y obtenidos los amigos de los amigos (fetch)
o Ejecutar comando edgelist:
• Teclear comando “python twecoll.py edgelist <cuenta>”.
Archivo Generado.
Ofelia Cervantes
Extracción de Amigos de los Amigos para
posterior visualización en Gephi (formato gml)
 Estructura del archivo “gml”, generado por el edgelist
• Nodos:
–
–
–
–
–
id
label
friends
user_id
followers
Identificador de nodo.
Etiqueta del nodo.
Número de amigos.
Identificador de usuario en twitter.
Numero de seguidores.
• Aristas:
- origen
- destino
Visto
desde
Gephi:
Ofelia Cervantes
Identificador de nodo origen.
Identificador del nodo destino.
Extracción de Tweets
1. Seleccionar cuenta a analizar.
2. Descargar sus tweets.
Archivo de tweets.
Ofelia Cervantes
Extracción de Tweets
Para descargar eel contenido de los tweets de una cuenta
•
Abrir una ventana de línea de comandos.
–
–
Windows: Presionar la combinación de teclas “Windows+R” e Ingresar la
palabra “cmd” y presionar enter.
MacOSX: Presionar la combinación de teclas “CMD+Espacio” e Ingresar la
palabra “terminal” y presionar enter.
• Ingresar al directorio “Twecoll” empleando el comando “cd
<directorio>”
• Ejecutar el comando “python twecoll.py tweets <cuenta>”.
 Se creará un archivo “<cuenta>.twt” con los tweets de la cuenta.
Ofelia Cervantes
Tweets
 Estructura de los datos:
– Su estructura es:
» Fecha de creación.
» Texto del tweet.
Estructura de cada tweet.
Archivo de tweets.
Ofelia Cervantes
Extracción de Likes
1. Seleccionar cuenta a analizar.
2. Descarga de likes.
Archivo de likes.
Ofelia Cervantes
Extracción de Likes
Para descargar los likes de una cuenta:
•
Abrir una ventana de línea de comandos.
–
–
Windows: Presionar la combinación de teclas “Windows+R” e Ingresar la
palabra “cmd” y presionar enter.
MacOSX: Presionar la combinación de teclas “CMD+Espacio” e Ingresar la
palabra “terminal” y presionar enter.
• Ingresar al directorio “Twecoll” empleando el comando “cd
<directorio>”.
• Ejecutar el comando “python twecoll.py likes <cuenta>”.
 Se crerará un archivo “<cuenta>.fav” con los likes de la cuenta.
Ofelia Cervantes
Likes
 Estructura de los datos del archivo .fav :
– Su estructura es:
» ID del like.
»
»
»
»
Fecha de creación.
ID de la cuenta donde está el tweet que te gustó
Screen name
Texto del tweet.
Estructura de cada like.
Archivo de likes.
Ofelia Cervantes
Resumen
 Existen varias herramientas para descargar información útil de
Twitter. Aprendimos a usar Twecoll, para extraer datos de Twitter,
que se pueden visualizar con Gephi*
 Ventajas:
o Sencillo de usar
o Extrae el contenido de los tweets y la red de amigos que
los distribuye
 Desventajas:
o No obtiene geo-localización del emisor del tweet
o Permite obtener un número limitado de tweets cada 15 mins
o No permite seleccionar los tweets por tema o por zona geográfica
o por cantidad de tweets/tema
*https://gephi.org/
Ofelia Cervantes
[email protected]
Ofelia Cervantes