Muat turun fail melalui HTTP dalam Python

WBOY
Lepaskan: 2023-08-27 21:25:12
ke hadapan
1273 orang telah melayarinya

Dalam Python, kami menggunakan perpustakaan terbina dalam Python seperti urllib, request dan httplib untuk memuat turun fail melalui HTTP. HTTP ialah protokol pemindahan hiperteks yang digunakan untuk mengakses data melalui World Wide Web. Permintaan HTTP biasanya dimulakan oleh pelanggan, seperti pelayar web, dan dihantar ke pelayan yang mengehos sumber yang diminta. Permintaan biasanya termasuk kaedah (seperti GET atau POST), Pencari Sumber Seragam (URL) yang mengenal pasti sumber dan pengepala pilihan yang memberikan maklumat tambahan tentang permintaan. Dalam artikel ini, kita akan belajar cara memuat turun fail menggunakan urllib dan meminta perpustakaan.

Gunakan urllib untuk memuat turun fail

Urllib mengandungi submodul seperti urllib.request yang boleh digunakan untuk memuat turun fail dari internet dengan mudah. urllib.request mengambil sebagai input URL fail dan nama fail yang anda ingin berikan untuk fail yang dimuat turun.

Tatabahasa

urllib.request.urlretrieve(URL, filename)
Salin selepas log masuk

Di siniurllib.request.urlretrievemempunyai dua parameter. Satu ialah URL fail di internet dan satu lagi ialah nama fail yang anda ingin berikan kepada fail yang dimuat turun.

Contoh

Dalam contoh berikut, perpustakaan urllib digunakan untuk memuat turun fail melalui HTTP dengan terlebih dahulu mengimport modul urllib.request dan kemudian memanggil fungsi urlretrive modul urllib.request. Lulus URL fail untuk dimuat turun dan nama fail untuk disimpan selepas memuat turun fail.

Jika URL tidak sah dihantar atau fail tidak boleh dimuat turun, pengecualian akan dibuang.

import urllib.request
from PIL import Image

url = 'https://www.python.org/static/img/python-logo.png'
filename = 'python-logo.png'

urllib.request.urlretrieve(url, filename)

with open(filename, 'rb') as f:
   image = Image.open(f)
   image.show()
Salin selepas log masuk

Output

Muat turun fail melalui HTTP dalam Python

Gunakan perpustakaan permintaan untuk memuat turun fail

permintaan perpustakaan membuat permintaan HTTP dalam Python menggunakan kaedah getnya. Ia hanya mengambil URL fail sebagai input, membuat permintaan dapatkan untuk memuat turun fail dan mengembalikan fail yang dimuat turun sebagai respons.

Tatabahasa

requests.get(URL)
Salin selepas log masuk

URL dalam kaedah requests.get() di sini ialah URL fail untuk dimuat turun melalui Internet.

Contoh

Dalam contoh di bawah, kami mengimport perpustakaan permintaan dan menentukan URL fail untuk dimuat turun dan nama untuk memberikan fail yang dimuat turun. Kami kemudian mengimport perpustakaan permintaan dan memuat turun logo Python menggunakan kaedah requests.get(). Kaedah ini mengembalikan objek tindak balas yang mengandungi kandungan fail. Akhirnya, kami membaca fail yang dimuat turun dan mencetaknya pada skrin.

import requests

url = 'https://www.python.org/static/img/python-logo.png'
filename = 'python-logo.png'

response = requests.get(url)

from PIL import Image

with open(filename, 'rb') as f:
   image = Image.open(f)
   image.show()
Salin selepas log masuk

Output

Muat turun fail melalui HTTP dalam Python

Kesimpulan

Dalam artikel ini, kami membincangkan cara memuat turun fail melalui HTTP dalam Python menggunakan perpustakaan terbina dalam Python seperti urllib dan perpustakaan permintaan. Pustaka permintaan menyediakan antara muka peringkat lebih tinggi yang lebih mesra pengguna daripada urllib. Pustaka permintaan menyediakan cara yang lebih mudah untuk memuat turun fail daripada perpustakaan urllib. Mana-mana perpustakaan boleh digunakan untuk memuat turun fail dalam Python.

Atas ialah kandungan terperinci Muat turun fail melalui HTTP dalam Python. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:tutorialspoint.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan