La descarga está en progreso. Por favor, espere

La descarga está en progreso. Por favor, espere

Ofelia Cervantes Desarrollo de Herramientas para Automatizar la Extracción de Datos 1.

Presentaciones similares


Presentación del tema: "Ofelia Cervantes Desarrollo de Herramientas para Automatizar la Extracción de Datos 1."— Transcripción de la presentación:

1 Ofelia Cervantes Desarrollo de Herramientas para Automatizar la Extracción de Datos 1

2 Ofelia Cervantes Desarrollo de Herramientas para Automatizar la Extracción de Datos  Políticas de uso de las redes sociales  Retos de los crowlers  NodeFriends

3 Ofelia Cervantes Políticas de las Redes Sociales  Las redes sociales regulan el acceso y uso de los datos autorizados.  Las políticas entran en vigor a partir de la primera vez en que se haga uso de los datos autorizados.  Evitan un mal uso de los datos (usos comerciales).  Aseguran la información de los usuarios finales.  Protegen la identidad de los usuarios finales.

4 Ofelia Cervantes Políticas de las Redes Sociales Twitter: o Límites: No intentar superar o eludir limitaciones de acceso, llamadas y uso de la API de Twitter. o Datos geográficos: No guardar datos de localización y otra información geográfica, excepto que la información esté junto con un Tweet al que se encuentra unida. o Protección del usuario: No ayudar a entidades gubernamentales a vigilar el contenido y obtener información de los usuarios, lo que requiere una orden judicial.

5 Ofelia Cervantes Políticas de las Redes Sociales Twitter: Obtener consentimiento explícito antes de realizar cualquiera de las siguiente acciones: Publicar contenido, seguir/ dejar de seguir a otros usuarios. Utilizar el contenido de un usuario para promocionar un producto o un servicio comercial. Almacenar contenido que no es público, como mensajes directos u otra información privada y confidencial. Compartir o publicar contenido protegido e información privada o confidencial.

6 Ofelia Cervantes Uso de APIs Twitter: o API REST Provee una interfaz de acceso para leer y escribir datos en Twitter. Respuestas en formato JSON. La autenticación se realiza empleando OAuth.

7 Ofelia Cervantes Uso de APIs Twitter: o El API REST permite obtener datos de cuentas de Twitter: Número de tweets. Número de personas siguiendo. Número de seguidores. Número de “me gusta”. IDs de usuarios.

8 Ofelia Cervantes Uso de APIs - autenticación Twitter: o OAuth Es la forma de autenticación a el API de Twitter. Permite una autorización segura. No es requerido compartir credenciales de usuario. Uso de HTTPS para la comunicación segura.

9 Ofelia Cervantes Uso de APIs Twitter: Limitaciones del API REST: Sólo permite un número límite de peticiones en un lapso de 15 minutos.

10 Ofelia Cervantes Uso de APIs Twitter: Ofrece librerías para consumir el API desde diversos lenguajes de programación: –Python: Tweepy. –ASP: Aspwitter. –C++: Twicurl. –Java: Twitter4J –JavaScript: Twitter JSClient. –PHP: Twitterauth

11 Ofelia Cervantes Políticas de las Redes Sociales Facebook: o Obtener el consentimiento del usuario antes de extraer cualquier tipo de información. o Proporcionar una política de privacidad publica y de fácil acceso que explique que datos se recopilan y que uso se hará de ello. o Solo se podrá utilizar el resto de datos fuera de la aplicación si se tiene consentimiento expreso del usuario. o Obtener consentimiento de los usuarios antes obtener información de forma independiente a Facebook.

12 Ofelia Cervantes Políticas de las Redes Sociales Facebook: o Proteger la información obtenida frente a un acceso o un uso no autorizados. o Utilizar datos de amigos únicamente cuando la persona en cuestión use la aplicación. o No almacenar ningún tipo de credenciales de usuario. o No vender datos obtenidos de Facebook, ni conceder licencias de estos. o No transferir datos a redes de publicidad o servicios de publicidad o relacionados con la monetización.

13 Ofelia Cervantes Uso de APIs Facebook: La API Graph: es la principal herramienta de las aplicaciones para leer y escribir en la gráfica social de Facebook. https://developers.facebook.com/docs/graph-api Provee una interfaz de acceso para leer y escribir datos de Facebook. Se trata de un API basada en HTTP. Respuestas en formato JSON. La autenticación se realiza empleando el protocolo OAuth.

14 Ofelia Cervantes Uso de APIs o API Graph de Facebook permite: –Consultar datos: »Lista de amigos. »Información de cuenta. »Información de likes. »Información de comentarios »Información de lugares. –Publicar contenido. –Subir fotos y videos.

15 Ofelia Cervantes Autenticación en Facebook Funcionamiento:

16 Ofelia Cervantes Uso de APIs Limitaciones de Facebook: En un lapso de 60 minutos sólo permiten 200 llamadas a la API por usuario. Para obtener listas de amigos de un usuario debe de haber una autorización previa. En grupos y páginas no se puede obtener el nombre de los usuarios que comentan y comparten.

17 Ofelia Cervantes Uso de APIs Google + API : o Es la interfaz de programación a Google+. o Sigue un diseño RESTful (Se emplean métodos HTTP estándar). o Permite autorizar a desarrolladores el acceso a los datos de los usuarios de dos maneras: Emplear el protocolo OAuth 2.0. Emplear un API key. o Ej. Obtener el perfil de un usuario, se enviaría la siguiente petición HTTP.

18 Ofelia Cervantes Uso de APIs Google + API: o Su API está organizada por tipo de recursos: –Personas: Es una lista de recursos de una persona. »Nombre, Imagen de perfil, URL de perfil, Email –Actividades: Es una nota que un usuario postea en su muro. »Id, imagen, nombre, fecha publicación, contenido, –Comentarios: Es una respuesta a una actividad. »Id, contenido, fecha publicación.

19 Ofelia Cervantes Retos de los Crawlers  Las APIs oficiales de las redes sociales presentan limitaciones.  Es necesario el uso de nuevas técnicas.  Los Crawlers son la solución perfecta. o Permiten encontrar y descargar nueva información automáticamente.

20 Ofelia Cervantes Retos de los Crawlers o Escala: Millones de páginas en internet. o Contenido nuevo cada segundo. o No es fácil determinar el número de páginas web en un sitio web.

21 Ofelia Cervantes Retos de los Crawlers y NodeFriends Formas de extracción: o Extracción sobre una página simple HTML. o La extracción sobre una página HTML que necesite autentificarse con credenciales. o La extracción de la información sobre páginas con contenido dinámico. Contienen programas scripts, que requieren ejecutarse para conocer el contenido de la página.

22 Ofelia Cervantes Retos de los Crawlers y NodeFriends NodeFriends – desarrollo UDLAP:  Se cuenta con un Crawler con las siguientes características: o Permite extraer la listas de amigos de Facebook, iniciando por un usuario semilla, detectando patrones y procesando información extraída. o Permite almacenar la información en dos archivos CSV (nodos y aristas)

23 Ofelia Cervantes Retos de los Crawlers y NodeFriends Metodología NodeFriends para extracción de la red de amigos de Facebook: Usuario semilla Paso 1: Exploración de lista de amigos. Paso 2: Extracción de la información. Paso 4: Almacenamiento de información. Paso 3: Procesamiento y clasificación de la información.

24 Ofelia Cervantes Retos de los Crawlers y NodeFriends NodeFriends: o Explora y extrae la lista de amigos existentes a partir de un usuario semilla. o Para la selección de la lista de amigos se declararon patrones de expresiones regulares los cuales se comparan directamente con el código HTML de cada página de amigos. o Almacena la lista de amigos en archivos CSV (separados por coma).

25 Ofelia Cervantes Retos de los Crawlers y NodeFriends Tecnologías empleadas de Crawling, para implementar NodeFriends: HtmlUnit: Librería que simula un navegador Web sin interfaz, permite manipular a un alto nivel de sitios Web http://htmlunit.sourceforge.net/ Escrita en Java. Permite el llenado y envío de datos a formularios mediante simulación de clics en hiperenlaces (autenticar). Extraer código fuente de páginas Web. Visitar cualquier página que contenga código JavaScript.

26 Ofelia Cervantes Uso de NodeFriends NodeFriends:  NodeFriends es una aplicación desarrollada en Java que permite extraer la lista de amigos, a partir de una cuenta semilla.  Descarga la lista de amigos de forma recursiva hasta el nivel de exploración indicado.  Genera los archivos para poder analizar la red con cualquier visualizador de redes.

27 Ofelia Cervantes Uso de NodeFriends Requisitos de NodeFriends:  Tener instalada la máquina virtual de Java. o Versión 8 o superior.  Su descarga es gratuita. o https://java.com/es/download/ https://java.com/es/download/

28 Ofelia Cervantes Uso de NodeFriends Ejecución de NodeFriends – WINDOWS o Descomprimir el archivo “NodeFriendsV0.1.zip” o Abrir el archivo “Windows.bat”

29 Ofelia Cervantes Uso de NodeFriends Ejecución de NodeFriends – Linux o Descomprimir el archivo “NodeFriendsV0.1.zip”

30 Ofelia Cervantes Uso de NodeFriends Ejecución de NodeFriends – LInux: o Abrir una consola de comandos. o Introducir el comando “java –jar ” o Arrastrar el archivo “NodeFriends.jar” a la ventana y presionar Enter.

31 Ofelia Cervantes Uso de NodeFriends Ejecución de NodeFriends – MacOSX: o Descomprimir el archivo “NodeFriendsV0.1.zip”

32 Ofelia Cervantes Uso de NodeFriends Ejecución de NodeFriends – Mac OS: o Presionar la combinación de teclas “CMD+Espacio” e ingresar la palabra “terminal” y presionar Enter. o Introducir el comando “java –jar ” o Arrastrar el archivo “NodeFriends.jar” a la ventana y presionar Enter.

33 Ofelia Cervantes Uso de NodeFriends 1.Ingresar el email de la cuenta de Facebook. 2.Ingresa la contraseña de la cuenta de Facebook. 3.Ingresa el nivel de exploración (1-Amigos, 2-Amigos de mis Amigos, 3-Amigos los Amigos de mis Amigos, …).

34 Ofelia Cervantes Uso de NodeFriends Obtener Datos de una cuenta personal de Facebook:  Presionar el botón «Obtener Datos» para comenzar a descargar los datos de Facebook.  Esto puede tardar un poco, dependiendo el nivel de exploración seleccionado. ingresado.

35 Ofelia Cervantes Uso de NodeFriends Datos Generados:  Al concluir la descarga de datos serán creados 2 archivos, uno contendrá los nodos (Amigos) y otro los enlaces (Amistades). Archivos Generados Archivo de nodos Archivo de aristas

36 Ofelia Cervantes Visualización de resultados de NodeFriends Visualización en Gephi  Para iniciar debemos abrir la herramienta, la podemos encontrar en Inicio>Todos los Programas>Gephi.  Iniciar nuevo proyecto:

37 Ofelia Cervantes Visualización de resultados de NodeFriends Importar Datos a Gephi  La herramienta Gephi permite crear los nodos y las relaciones a partir de archivos parametrizados (CSV).  Importar: Ir a la sección «Laboratorio de datos» en esta sección se podrán ver todos los nodos y relaciones creadas.

38 Ofelia Cervantes Visualización de resultados de NodeFriends Importar Datos a Gephi:  Importar Nodos: Seleccionar la opción «Importar hoja de cálculo», seleccionar el archivo y seleccionar tabla de nodos, presionar siguiente y luego presionar terminar.

39 Ofelia Cervantes Visualización de resultados de NodeFriends Importar Datos a Gephi:  Importar Relaciones: Seleccionar la opción «Importar hoja de cálculo», seleccionar el archivo y seleccionar tabla de aristas, presionar siguiente y luego presionar terminar.

40 Ofelia Cervantes Visualización de resultados de NodeFriends Visualizando los Datos con Gephi:  Para visualizar la red, debemos ir a la sección «Vista General», donde podremos visualizar una red, aun sin una apariencia estética.

41 Ofelia Cervantes Visualización de resultados de NodeFriends Detección de Comunidades:  La detección de comunidades se realiza con el algoritmo de modularidad el cual ventana de «Estadísticas».  Cambiar el color de los nodos a partir de la comunidad a la que pertenece: En la parte izquierda «Apariencia>Nodos» seleccionar el atributo de «Modularity Class» y presionar en el botón Aplicar.

42 Ofelia Cervantes Visualización de resultados de NodeFriends Detección de Comunidades en Gephi:  La modularidad le dará un aspecto como el de la siguiente imagen.  Cada color representa una comunidad distinta.

43 Ofelia Cervantes Visualización de resultados de NodeFriends Visualización de Grado Vector Propio  El algoritmo de vector propio lo aplicamos en la sección de la derecha «Estadísticas».  En la parte izquierda en la sección de Apariencia>Tamaño>Nodos>Atributo seleccionar el atributo de «Eigenvector Centrality» y presionar en el botón Aplicar.

44 Ofelia Cervantes Visualización de resultados de NodeFriends Visualización de Grado Vector Propio.  Visualizar el tamaño de los nodos dependiendo del grado de vector propio que tiene cada nodo, mostrando nodos más grandes dependiendo del grado calculado:

45 Ofelia Cervantes Visualización de resultados de NodeFriends Distribución de los Nodos:  Gephi permite aplicar algoritmos de distribución, para dar un aspecto más estético a la red y así poder analizarla mejor. Para aplicar el algoritmo de distribución solo basta ir a la sección de distribución y seleccionar el algoritmo deseado.

46 Ofelia Cervantes Visualización de resultados de NodeFriends Distribución ForceAtlas2:  Es un modelo de atracción lineal y repulsión lineal con unas pocas aproximaciones.  Ventana “Distribución” seleccionar Forcetlas2.  Configurar su atributos «Evitar Solapamiento» y presionar ejecutar.

47 Ofelia Cervantes Visualización de resultados de NodeFriends Resultados de aplica la Distribución ForceAtlas2:  Genera un grafo que puede ser analizado más fácilmente.

48 Ofelia Cervantes Visualización de resultados de NodeFriends Mostrar Etiquetas de Nodos:  Ventana “Grafo”, pestaña “Etiquetas”.  Habilitar la opción “Nodo”.

49 Ofelia Cervantes Visualización de resultados de NodeFriends Mostrar Etiquetas de Nodos

50 Ofelia Cervantes Visualización de resultados de NodeFriends Exportar Grafo:  Gephi permite exportar el grafo a una imagen. En el módulo de previsualización podremos configurar diferentes parámetros.

51 Ofelia Cervantes Visualización de resultados de NodeFriends Exportar Grafo

52 Ofelia Cervantes Analizando el grafo  Se puede apreciar qué personas son más influyentes (Tamaño del nodo), también se puede identificar a las personas que comparten un patrón de similitud (Color del nodo).

53 Ofelia Cervantes Analizando el grafo  Se puede visualizar el impacto de una persona dentro de una red, el cual posibilita la conexión con otros miembros de la red y sin él no sería posible llegar a otros nodos (personas).

54 Ofelia Cervantes Analizando el grafo  Existen personas en la red que tienen una mayor capacidad para controlar la difusión de un mensaje, esto puede ser aprovechado en una campaña de marketing.

55 Ofelia Cervantes Referencias útiles Twitter API REST: o Políticas de Uso https://dev.twitter.com/es/overview/terms/agreement-and-policy o Documentación https://dev.twitter.com/overview/documentation o Estructura de los objetos (Tweets, Users, Entities) https://dev.twitter.com/overview/api o Autenticación https://dev.twitter.com/oauth o Librerías (Varios lenguajes de programación) https://dev.twitter.com/overview/api/twitter-libraries o Límites de uso https://dev.twitter.com/rest/public/rate-limits

56 Ofelia Cervantes Referencias útiles Facebook Graph-API: o Políticas de Uso https://developers.facebook.com/policy/#integration o Documentación https://developers.facebook.com/docs/graph-api/reference o Librerías (Varios lenguajes de programación) https://developers.facebook.com/docs/apis-and-sdks o Límites de uso https://developers.facebook.com/docs/graph- api/advanced/rate-limitinghttps://developers.facebook.com/docs/graph- api/advanced/rate-limiting

57 Ofelia Cervantes Referencias útiles Google + o Políticas de Uso https://developers.google.com/+/web/terms o Documentación https://developers.google.com/+/web/api/rest/latest/ o Autenticación https://developers.google.com/+/web/api/rest/oauth o Librerías (Python) https://developers.google.com/api-client-library/ o Límites de uso https://developers.google.com/+/web/api/rest/#quota

58 Ofelia Cervantes Referencias útiles HTML Unit: o Descarga https://sourceforge.net/projects/htmlunit/files/htmlunit/ o Get Started http://htmlunit.sourceforge.net/gettingStarted.html

59 Ofelia Cervantes ofelia.cervantes@udlap.mx


Descargar ppt "Ofelia Cervantes Desarrollo de Herramientas para Automatizar la Extracción de Datos 1."

Presentaciones similares


Anuncios Google