"Si un trabajador quiere hacer bien su trabajo, primero debe afilar sus herramientas." - Confucio, "Las Analectas de Confucio. Lu Linggong"
Página delantera > Programación > ¿Cómo descargar archivos desde un servidor web en Python 3?

¿Cómo descargar archivos desde un servidor web en Python 3?

Publicado el 2024-11-08
Navegar:745

How to Download Files from a Web Server in Python 3?

Cómo descargar un archivo desde un servidor web en Python 3

Introducción

Descargar archivos desde un servidor web es una tarea común en muchas programaciones proyectos. Python proporciona varias bibliotecas para simplificar este proceso, lo que facilita la descarga de archivos desde URL específicas.

Descargar un archivo con urlretrieve

import urllib.request

url = "http://example.com/file.jar"
urllib.request.urlretrieve(url, "file.jar")

Este código utiliza la función urlretrieve para descargar el archivo desde la URL y guardarlo localmente como file.jar.

Descargar un archivo para streaming

import urllib.request
import shutil

url = "http://example.com/file.jar"

with urllib.request.urlopen(url) as response, open("file.jar", "wb") as out_file:
    shutil.copyfileobj(response, out_file)

Este código abre un objeto similar a un archivo usando la función urlopen y copia el contenido a un archivo local usando Shutil.copyfileobj. Este método permite la transmisión de archivos grandes sin almacenar el archivo completo en la memoria.

Manejo de archivos comprimidos

import urllib.request
import gzip

url = "http://example.com/file.gz"

with urllib.request.urlopen(url) as response:
    with gzip.GzipFile(fileobj=response) as uncompressed:
        data = uncompressed.read()

Este código abre un archivo comprimido como un objeto similar a un archivo usando la clase gzip.GzipFile y lee los datos descomprimidos en una variable.

Último tutorial Más>

Descargo de responsabilidad: Todos los recursos proporcionados provienen en parte de Internet. Si existe alguna infracción de sus derechos de autor u otros derechos e intereses, explique los motivos detallados y proporcione pruebas de los derechos de autor o derechos e intereses y luego envíelos al correo electrónico: [email protected]. Lo manejaremos por usted lo antes posible.

Copyright© 2022 湘ICP备2022001581号-3