Las cookies nos permiten ofrecer nuestros servicios. Al utilizar nuestros servicios, aceptas el uso que hacemos de las cookies. Más Información. Aceptar

Cómo hacer Web Scraping con Python

Rafael Zambrano
Cómo hacer Web Scraping con Python
El reproductor de video será cargado en breves instantes.

Descubre cómo poder realizar web scraping de una forma sencilla empleando Python.

Web scraping con Python

Para hacer web scraping con Python lo que tenemos que hacer es sustituir lo que hacemos en un navegador web por un programa en Python.

Imagen 0 en ¿Cómo hacer Web Scraping con Python?

En un navegador lo que hacemos es escribir una URL, lo que hace que se envíe una petición, siguiendo el protocolo HTTP, a un servidor, el cual nos devuelve el código HTML que nuestro navegador consigue interpretar y transformar con ese aspecto visual que vemos en las páginas web.

Con Python podemos hacer exactamente lo mismo, crear programas que generen peticiones al servidor y recibir el código fuente en formato HTML.

Además existen librearías como Beautiful Soup que permiten analizar los HTML y extraer las partes que nos interesen.

En general, un código HTML, el código fuente de una página, contiene muchísima información, de la cual solo nos interesan ciertas partes.

Imagen 1 en ¿Cómo hacer Web Scraping con Python?

Por ejemplo, podemos extraer los enlaces de una página web, lo que sería un web crawler. Esto se haría detectando este tipo de estructuras de anclaje, marcadas con la etiqueta a, y así podemos extraer los valores de los atributos href.

Práctica de web scraping con Python

Vamos a ver un ejemplo de web scraping con Python.

Lo primero que haremos será utilizar una para abrir una página web y leer el contenido en HTML. Para hacerlo, en nuestro IDE escribimos el siguiente código, indicando la URL de la web que queremos leer:

	import urllib.request
	datos = urllib.request.urlopen(‘https://www.openwebinars.net’).read().decode()

Una vez hecho, la variable datos contendrá todo el HTML de esa web, lo que no nos interesa porque está en bruto. Necesitamos poder extraer las partes que nos interesen, para ello vamos a extraer la librería Beautiful Sup:

import sys
	!{sys.executable} -m pip install beayutifulsoup4

Una vez instalada esta librería, lo que haremos será transformar todo el HTML extraído en un objeto de BeautifulSoup, el cual llamaremos soup. Una vez tenemos ese objeto, vamos a extraer todas las etiquetas de anclaje, que las guardaremos en la variable tags, la cual va a contener todas las etiquetas que tengan hipervínculos, y cada una de ellas las vamos a recorrer con un bucle for e imprimiremos el contenido del atributo href.

from bs4 import BeautifulSoup
soup =  BeautifulSoup(datos)
tags = soup(‘a’)
for tag in tags:
		print(tag.get(‘href’))

Ejecutamos lo anterior y podemos ver que se imprimen todos los enlaces que existen en la web que hemos indicado.

Conviértete en un experto del web scrapping, aprende cómo extraer datos de sitios web utilizando Python como lenguaje de programación.

cta-curso-web-scraping

Recuerda que puedes comenzar este curso con tu suscripción de OpenWebinars. Si todavía no estás suscrito, aprovecha para hacerlo ahora.

Relacionado

Te dejamos una selección de cursos, carreras y artículos

Experto en base de datos

Experto en base de datos

carrera

Incluye 4 cursos:

  • Curso Online de MongoDB
  • Curso de SQL desde Cero
  • Curso de creación y administración de Bases de Datos SQL

y 1 cursos más!

Duración: 15 horas y 14 minutos

Qué es y por qué usar el Web Scraping

Qué es y por qué usar el Web Scraping

Metodologías y herramientas

17 de Junio de 2019

El web scraping es una técnica muy utilizada en la actualidad, si quieres saber más sobre ella, te contamos qué es y los muchos usos que tiene.

 

Curso de Web scraping: Extracción de datos en la Web

Curso de Web scraping: Extracción de datos en la Web

curso

Con este curso aprenderás:

  • Aprenderás a extraer datos web de diversa naturaleza
  • Conocerás librerías del lenguaje Python destinadas a la extracción y procesamiento de datos web
  • Conocerás cómo se comparten datos en la web a través de APIs

Duración: 4 horas y 4 minutos

Estas son algunas de las empresas que ya confían en OpenWebinars

Profesores y profesionales

Nuestros docentes son profesionales que trabajan día a día en la materia que imparten

Conviértete en profesor de OpenWebinars