Descargar imagen en Python

Muhammad Maisam Abbas 11 diciembre 2023
  1. Descargar imagen usando el paquete urllib en Python
  2. Descargar imagen usando la biblioteca requests en Python
Descargar imagen en Python

Este tutorial discutirá algunas de las formas más destacadas de descargar una imagen de Internet usando Python.

Descargar imagen usando el paquete urllib en Python

El paquete urllib es una colección de varios módulos para trabajar con URL. urllib.request es un módulo utilizado para abrir y leer contenido en URL. Para este tutorial, usaremos Python para descargar un archivo de imagen de https://www.python.org/images/success/nasa.jpg. En el módulo urllib.request, se pueden utilizar dos métodos para descargar una imagen, que se explicarán a continuación.

Descargar imagen usando el método urllib.request.urlretrieve(url, filename)

El siguiente ejemplo de código muestra cómo podemos descargar una imagen en Python usando el método urlretrieve(url, filename).

import urllib.request

urllib.request.urlretrieve("https://www.python.org/images/success/nasa.jpg", "NASA.jpg")

print("download successful")

Producción :

download successful

El código anterior descarga la imagen al directorio de trabajo actual. El método urlretrieve(url, filename) toma la URL de la imagen y el nombre del archivo que desea almacenar como argumentos. El método urlretrieve(url, filename) aparece en la interfaz heredada de la documentación oficial, lo que significa que el método urlretrieve(url, filename) quedará obsoleto en el futuro.

Descargar imagen usando urllib.request.urlopen(url)

Para superar la inevitable desaprobación del método urlretrieve(url, filename), método urlopen(url) se puede utilizar con el manejo de archivos. Según la documentación oficial de Python, el método urlopen(url) se utiliza para abrir cualquier URL.

El siguiente ejemplo de código muestra cómo podemos descargar una imagen usando el método urlopen(url) con manejo de archivos.

import urllib.request

f = open("NASA2.jpg", "wb")
f.write(urllib.request.urlopen("https://www.python.org/images/success/nasa.jpg").read())
f.close()
print("download successful")

Producción :

download successful

En el código anterior, primero abrimos un archivo llamado NASA2.jpg en modo escribir binarios usando el método open(filename, mode). En la siguiente línea, escribimos el contenido leído de la URL en el archivo usando el método write(). Después de eso, cerramos el archivo usando el método close().

Descargar imagen usando la biblioteca requests en Python

Las requests es una biblioteca de Python que podemos usar para enviar solicitudes HTTP / 1.1 al servidor. Podemos enviar una solicitud GET a la URL utilizando el [método get(url) en la biblioteca de requests para obtener el archivo de imagen de la URL y luego guárdelo usando el manejo de archivos.

El siguiente ejemplo de código muestra cómo podemos descargar una imagen usando la biblioteca de requests con manejo de archivos.

import requests

f = open("NASA3.jpg", "wb")
response = requests.get("https://www.python.org/images/success/nasa.jpg")
f.write(response.content)
f.close()

print("download successful")

Producción :

download successful

En el código anterior, primero abrimos un archivo llamado NASA3.jpg en modo write binaries usando el método open(filename, mode).

En la siguiente línea, almacenamos la respuesta de nuestra solicitud GET en la variable - response.

Después de eso, escribimos el contenido binario de la respuesta en el archivo usando el método write().

Finalmente, cerramos el archivo usando el método close().

Muhammad Maisam Abbas avatar Muhammad Maisam Abbas avatar

Maisam is a highly skilled and motivated Data Scientist. He has over 4 years of experience with Python programming language. He loves solving complex problems and sharing his results on the internet.

LinkedIn

Artículo relacionado - Python Image