← Volver

Cómo abrir y leer URLs

Python incluye en la librería estándar el módulo urllib.request para abrir y leer URLs. La lectura del contenido de un sitio web es bastante similar a la de un archivo convencional.

from urllib.request import urlopen

# Abrir URL.
r = urlopen("https://www.recursospython.com")
# Leer el contenido y e imprimir su tamaño.
print(len(r.read()))
# Cerrar para liberar recursos.
r.close()

Para guardar el contenido en un archivo:

r = urlopen("https://www.recursospython.com")
with open("index.html", "wb") as f:
f.write(r.read())
r.close()

Por otro lado, la comunidad de Python ha adoptado a la librería Requests como el método predilecto para el manejo de entrada y salida HTTP. Se trata de un paquete de más alto nivel que urllib y con mayores funcionalidades. Haciendo uso de ésta, el código anterior se traduce como sigue.

import requests

r = requests.get("https://www.recursospython.com")
with open("index.html", "wb") as f:
f.write(r.content)
r.close()

Requests se instala sencillamente vía pip:

pip install requests


¿Alguna duda sobre este código? ¡Preguntanos en el foro!