"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como baixar arquivos de um servidor Web em Python 3?

Como baixar arquivos de um servidor Web em Python 3?

Publicado em 2024-11-08
Navegar:627

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

Como baixar um arquivo de um servidor web em Python 3

Introdução

Baixar arquivos de um servidor web é uma tarefa comum em muitos programas de programação projetos. Python fornece diversas bibliotecas para simplificar esse processo, facilitando o download de arquivos de URLs específicos.

Baixando um arquivo com urlretrieve

import urllib.request

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

Este código usa a função urlretrieve para baixar o arquivo de url e salvá-lo localmente como file.jar.

Baixando um arquivo 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 um objeto semelhante a um arquivo usando a função urlopen e copia o conteúdo para um arquivo local usando shutil.copyfileobj. Este método permite o streaming de arquivos grandes sem armazenar o arquivo inteiro na memória.

Manipulação de arquivos compactados

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 um arquivo compactado como um objeto semelhante a um arquivo usando a classe gzip.GzipFile e lê os dados descompactados em uma variável.

Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3