In questo articolo vedremo come effettuare il download di un'immagine casuale con Python.
Useremo il modulo di terze parti requests
per effettuare la richiesta HTTP e il modulo core shutil
per salvare l'immagine scaricata nel filesystem.
import requests
import shutil
def download_random_image(image_path):
image_url = 'https://picsum.photos/600/400'
try:
res = requests.get(image_url, stream=True, allow_redirects=True)
with open(image_path, 'wb') as f:
shutil.copyfileobj(res.raw, f)
return True
except requests.exceptions.RequestException:
return False
La richiesta HTTP deve ricevere i dati come stream. Il parametro della nostra funzione rappresenta il percorso completo dell'immagine da salvare nel filesystem. res.raw
rappresenta i dati dell'immagine in formato binario che verranno salvati tramite il metodo copyfileobj()
.