web scraping & api rest
TRANSCRIPT
Juan Carlos Gonzales Q
SCRAPING & API REST
https://www.facebook.com/elcharlygraf
NO ACCESOSCRAPING
DATA SCRAPINGTiene la atención de los periodistas que necesitan
acceder y organizar los datos para reportajes de investigación.
¿Qué es Scraping?
Es un método que nos permite “extraer datos para transportarlos a un formato sencillo” para analizarlos y cruzarlos con mayor facilidad.
¿Hay límites para scraping?
¿A qué formatos nos enfrentamos?- PDF.- HTML.- RTF.- JPG.- DOCX.
● Cuando hacemos una búsqueda de datos, muchas veces nos encontramos con información que está en distintos formatos.
● Las técnicas de scraping nos permiten unificar formatos de datos para combinarlos y analizarlos luego.
Herramienta para scrapear PDF:
- www.zamzar.comconvierte .pdf’s a x
pdf docentes
Scrapear imágenes
Herramienta para scrapear imágenes:
- www.free-ocr.comhttp://www.scielo.org.mx/img/revistas/rmie/v14n43/a9c1.jpgScrapea imágenes.
Herramientas:
- Para desarrolladores:
SCRAPY: https://github.com/scrapy/scrapy/
Mozenda, Scraper wiki, DeiXto, Nokogiri, kimonolabs, simple_html_dom, etc.
Import.io
¿Qué hacemos con los datos?
Principalmente recomiendo usar la imaginación.
- Manual del periodismo de datos: http://manual.periodismodedatos.org/
Aspectos Legales
“no estarán autorizadas la extracción y/o reutilización repetidas o sistemáticas de partes no sustanciales del contenido de una base de datos que supongan actos
contrarios a una explotación normal de dicha base o que causen un perjuicio injustificado a los intereses
legítimos del fabricante”.
Artículo 133 del Real Decreto Legislativo 1/1996, de 12 de abril, por el que se aprueba el Texto Refundido de la Ley de Propiedad Intelectual.
WEB SCRAPINGTécnicas utilizadas para obtener datos de sitios web. Podemos hacerlo
mediante el uso de comandos, extensiones, software o scripts.
¿En qué lenguajes?
- PHP- PYTHON- RUBI- JAVASCRIPT- JAVA- Cualquiera :)
¿Cómo funciona?- Script descarga.- Script de scraping.- Script de insert BD.
Software de scraping: HTTrack
Crawlers Buscadores de vínculos, para indexar.
Crawlers Buscadores de vínculos, para indexar.
Compartir enlace.
si, es simple :3
Frameworks de scraping
1. Goutte : Es una librería de rastreo web en PHP. Goutte proporciona una agradable API para
rastrear sitios web y extraer los datos de las respuestas ya sea HTML o XML. Ha sido creado con
Symfony2.
2. Guzzle: Es un framework que incluye las herramientas necesarias para crear un cliente robusto de
servicios web. Incluye: descripciones de Servicio para definir las entradas y salidas de una API,
iteradores para recorrer webs paginadas, procesamiento por lotes para el envío de un gran número
de solicitudes de la manera más eficiente posible. También ha sido creado usando Symfony2.
3. Snoopy: Es una clase PHP que simula un navegador web. Automatiza la tarea de recuperar los
contenidos de la página web y la publicación de los formularios
4. PHPCrawl: Es un framework para el rastreo de sitios web usando el lenguaje de programación
PHP, por lo que es conocido como la librería webcrawler o rastreador de PHP.
SI ACCESOAPI’S
Interfaz de programación de aplicaciones.comunicación cliente - servidor.
¿Qué es una API?
WEB IO ANDROID OAUTH
API
REST: Representational State Tranfer (of resources)
¿Qué es REST?
Resources: Sustantivo- User- Company- Etc.
Entities: Entidades- Juan Carlos- Laravel Perú {
users: '75'}
Representation- Json {
name: 'Juan Carlos',
edad: '23'}- Xml<name>Juan Carlos</name>- Csv- Text
¿Para qué usar API REST?
● Exponer datos a otros programas.● Facilitar el desarrollo del frontend.● Crear arquitecturas orientadas a servicios.
Json, xml, texto plano...
¿Qué forma tiene la data?
HTTP: Mediante verbos o tipos de peticiones:
Get, Post, Put, Delete, Patch
¿Cual es el canal?
Esto nos devuelve estados:200 - 299: Todo bien400 - 499: Error del usuario500 - 599: Error en el servidor
Las api’s del día a día.
API’S FAMOSAS
● Twitter● Instagram● Facebook● Spotify● Uber
Seguridad en las API’S
● APIS PÚBLICAS: Acceden por GET.● APIS PRIVADAS: Necesitan un key & token.