Diferencia entre revisiones de «LSWC scraping the web/presentacion lwsc 2011»
De WikiEducator
| (22 revisiones intermedias por el mismo usuario no mostrado) | |||
| Línea 4: | Línea 4: | ||
= Screen Scraping :: Aumentando el poder de la web= | = Screen Scraping :: Aumentando el poder de la web= | ||
| − | Luis Miguel Morillas <lmorillas at xml3k.org> | + | Luis Miguel Morillas <lmorillas at xml3k.org> |
| + | |||
| + | Zaragoza, 10 de noviembre de 2011 | ||
identi.ca: lmorillas | identi.ca: lmorillas | ||
</div> | </div> | ||
<div class="slide"> | <div class="slide"> | ||
| − | == | + | ==1. Intro == |
| + | </div> | ||
| + | <div class="slide"> | ||
| + | |||
| + | ===¿POR QUÉ HACER SCRAPING?=== | ||
| + | * Web de datos | ||
| + | |||
| + | * En la web hay mucha información | ||
| + | * No siempre estructurada (opendata) | ||
| + | * '''Divertido''' | ||
</div> | </div> | ||
| + | |||
| + | <div class="slide nobackground"> | ||
| + | ===¿DÓNDE/CÓMO ESTÁN LOS DATOS?=== | ||
| + | ''¿A qué hora es la charla de Jython?'' | ||
| + | [[Archivo:Lswc horario codigo.png]] | ||
| + | |||
</div> | </div> | ||
| + | <div class="slide"> | ||
| + | === CONDICIONES LEGALES === | ||
| + | * Uso responsable | ||
| + | Robots y Screen Scraping (raspado de pantalla): Usted no podrá usar | ||
| + | minería de datos ("data mining"), robots, screen scraping o herramientas | ||
| + | similares de acumulación y extracción de datos en este sitio de red, | ||
| + | salvo con nuestro consentimiento expreso y por escrito tal y | ||
| + | como se indica a continuación. | ||
| + | http://www.imdb.es/help/show_article?conditions | ||
| + | </div> | ||
| + | |||
| + | <div class="slide"> | ||
| + | === ¿POR QUÉ PYTHON? === | ||
| + | * Muy fácil para "no programadores" | ||
| + | * Muchos módulos, herramientas, ejemplos y documentación. | ||
| + | * Desarrollo muy rápido y eficiente | ||
| + | * Open-source | ||
| + | </div> | ||
| + | |||
| + | <div class="slide"> | ||
| + | ==2. ¿Cómo? == | ||
| + | </div> | ||
| + | |||
| + | <div class="slide"> | ||
| + | === PROCESO GENERAL === | ||
| + | * Analizar | ||
| + | * Buscar patrones | ||
| + | * Extracción de datos | ||
| + | </div> | ||
| + | |||
| + | <div class="slide"> | ||
| + | === ¿BÚSQUEDA EN EL TEXTO BRUTO? === | ||
| + | <source lang="python"> | ||
| + | import urllib2 | ||
| + | |||
| + | URL = 'http://www.libresoftwareworldconference.com/' | ||
| + | source = urllib2.urlopen(URL).read() | ||
| + | </source> | ||
| + | |||
| + | * Proceso del texto (Búsqueda subcadenas ...) | ||
| + | * Expresiones regulares | ||
| + | </div> | ||
| + | |||
| + | <div class="slide"> | ||
| + | === NO. MEJOR USAMOS LIBRERÍAS ... === | ||
| + | * Beautiful Soup | ||
| + | * lxml | ||
| + | * html5lib | ||
| + | * mechanize | ||
| + | * scrapemark | ||
| + | * pyquery | ||
| + | * scrapy | ||
| + | ... | ||
| + | </div> | ||
| + | |||
| + | <div class="slide"> | ||
| + | === AMARA === | ||
| + | * http://akara.info | ||
| + | * http://www.xml3k.org | ||
| + | * Proyecto liderado por Uche Ogbuji / [http://zepheira.com/ Zepheira] | ||
| + | * Combina el poder de Python y de las tecnologías XML | ||
| + | </div> | ||
| + | |||
| + | <div class="slide"> | ||
| + | === MÁS DETALLES === | ||
| + | * Implementada en C y Pyhton | ||
| + | * Parser basado en Expat | ||
| + | * API para recorrido de nodos muy eficiente y sencilla<br/> | ||
| + | : Python, XPath, InfoSet | ||
| + | * XPath (& binding dinámico de objetos) | ||
| + | * XSLT (& enlazado con funciones en Python) | ||
| + | * Aserciones basadas en Schematron (validación de modelos) | ||
| + | * Licencia tipo Apache | ||
| + | </div> | ||
| + | |||
| + | <div class="slide"> | ||
| + | === CREANDO DATOS PARA LA WEB: AKARA === | ||
| + | * '''Akara''' es un framework para construir apps RESTful basadas en datos | ||
| + | * Aplicando sencillos wrappers (decoradores) transformamos funciones en serviciios REST | ||
| + | * Funciona como un repositorio de servicios con '''autodiscover''' | ||
| + | </div> | ||
| + | |||
| + | <div class="slide"> | ||
| + | === CASOS DE ÉXITO === | ||
| + | * http://viewshare.org/about/help/ | ||
| + | |||
| + | [http://outreach.zepheira.com/public/loc/recollection/video/recollection-intro.swf http://viewshare.org/static/images/recollection-video-thumbnail.png] | ||
| + | |||
| + | </div> | ||
| + | <div class="slide"> | ||
| + | |||
| + | ==3. Práctica == | ||
| + | |||
| + | </div> | ||
| + | |||
| + | |||
| + | </div> | ||
<div id="weSlideLogo" class="nav"> | <div id="weSlideLogo" class="nav"> | ||
| − | '''Scraping the web with amara''' [[image:Logoamara.png|200px]] | + | <p>'''Scraping the web with amara'''</p> [[image:Logoamara.png|200px]] |
</div> | </div> | ||

