Web scraping con Python Fácil

En esta publicación les voy a mostrar a grandes rasgos como hacer un web scraping con python y sus librerías muy fácilmente.

Primero que nada vamos a definir

  • Scraping: es una técnica utilizada mediante programas de software para extraer información de sitios web.
  • WEB: esto ya lo saben jeje.


Bien vamos al código

En este tutorial estoy usando python 3.4 y windows 7 32bits.

Primero que nada empezaremos descargando las librerías necesarias utilizando el comando pip.
Si no sabes hacer el path en windows luego le enseñare.

Están simple como ejecutar el siguiente comando en la consola.

user> pip install requests beautifulsoup4

Con esa simple sentencia ya tendríamos instaladas las librerías necesarias para poder realizar un scraping.

Vamos a realizar el scraping sobre el sitio http://python.org/donwload , nuestro objectivo seria obtener los enlace de descarga de python para windows.
Bien ahora vamos al codigo Python.

Lo primero que debemos hacer es importar las dos librerias que utilizaremos.

import requests #importamos la libreria request
import bs4 #importamos la libreria beautifulsoup4

A continuación descagaremos el html de la pagina y la convetiremos a una estructura manejable mediante la libreria bs4

url = 'http://python.com/download' #La url en la cual trabajaremos
pagina = requests.get(url) #descagamos el sitio web (HTML)
soup = bs4.BeautifulSoup(pagina) #Traduse el html a una estructura manejable.

Ahora solo queda selecciónar la etiqueta html de la cual queremos acceder. En este caso es ‘div.download-os-windows p a’ mediante el uso de bs4.select lo guardamos en una lista.

downloadList = soup.select(‘div.download-os-windows p a’) #Creamos un puntero al codigo html

Solo queda obtener los enlaces.

for href in downloadList:
  print(href.attrs.get('href')) #resultado final

Y listo ya obtuvimos los enlaces de descarga del sitio de python.

Codigo Final

import requests '''importamos la libreria request
Documentación: http://docs.python-requests.org/en/latest/'''
import bs4 '''importamos la libreria beautifulsoup4
Documentación: http://www.crummy.com/software/BeautifulSoup/bs4/doc/ '''
url = 'http://python.com/download' #La url en la cual trabajaremos
pagina = requests.get(url).text #descagamos el sitio web (HTML)
soup = bs4.BeautifulSoup(pagina) #Traduse el html a una estructura manejable.
downloadList = soup.select('div.download-os-windows p a') #Creamos un puntero al codigo html
for href in downloadList:
  print(href.attrs.get('href')) #resultado final

4 comentarios en “Web scraping con Python Fácil”

Deja un comentario