Bagaimana Anda menyimpan gambar dengan python?

Bekerja dengan gambar di Python memberi Anda berbagai kemampuan pengembangan, mulai dari mengunduh gambar dengan URL hingga mengambil atribut foto. Tapi, bagaimana tepatnya Anda bisa mendapatkan akses ke foto-foto ini?

Pada artikel ini, Anda akan membahas beberapa metode berbeda yang digunakan untuk mengunduh gambar dengan Python

Prasyarat

Untuk mendapatkan manfaat penuh dari posting ini, Anda harus memiliki yang berikut ini

✅ Beberapa pengalaman dengan Python 2 atau Python 3 🐍

✅ Python 3 diinstal di mesin lokal Anda. Ada satu skrip yang kompatibel dengan Python 2 di bagian ini

Menggunakan Python untuk mengunduh dan menyimpan gambar dari URL

 

Menggunakan Paket Permintaan

Menjadi klien HTTP paling populer di Python, paket Permintaan elegan dan mudah digunakan untuk pemula. Banyak pengembang menganggapnya sebagai metode yang nyaman untuk mengunduh semua jenis file dengan Python

Dengan asumsi Anda telah menginstal Python 3 ke lingkungan lokal Anda, buat direktori

file_name = input('Save image as (string):') #prompt user for file name
2 dan tambahkan
file_name = input('Save image as (string):') #prompt user for file name
3. Setelah file itu dibuka, instal dan impor paket-paket berikut

import requests # request img from web
import shutil # save img locally

Setelah Anda mengimpor file tersebut, buat variabel

file_name = input('Save image as (string):') #prompt user for file name
4 yang disetel ke pernyataan
file_name = input('Save image as (string):') #prompt user for file name
5 yang meminta URL gambar

url = input('Please enter an image URL (string):') #prompt user for img url

Selain itu, buat variabel lain yang juga disetel ke pernyataan input,

file_name = input('Save image as (string):') #prompt user for file name
6

file_name = input('Save image as (string):') #prompt user for file name

Di baris kode berikutnya, terapkan metode

file_name = input('Save image as (string):') #prompt user for file name
7 dari modul permintaan untuk mengambil gambar. Metode ini akan mengambil dua parameter, variabel
file_name = input('Save image as (string):') #prompt user for file name
_4 yang Anda buat sebelumnya, dan
file_name = input('Save image as (string):') #prompt user for file name
9 dengan menambahkan argumen kedua ini untuk menjamin tidak akan terjadi interupsi saat metode berjalan

res = requests.get(url, stream = True)

Metode

res = requests.get(url, stream = True)
_0 untuk menulis gambar Anda sebagai nama file, membuat file secara lokal dalam mode tulis-biner dan menyimpannya secara lokal dengan
res = requests.get(url, stream = True)
1. Meskipun tidak perlu, ada baiknya untuk memeriksa apakah gambar berhasil diambil menggunakan Kode Status Permintaan dalam pernyataan bersyarat

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')

Skrip Anda yang sudah selesai akan terlihat seperti ini

import requests # request img from web
import shutil # save img locally

url = input('Please enter an image URL (string):') #prompt user for img url
file_name = input('Save image as (string):') #prompt user for file_name

res = requests.get(url, stream = True)

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')

Jalankan skrip Anda dengan menjalankan perintah berikut di terminal Anda

python requests_python_img_dl.py

Gambar yang Anda unduh akan disimpan ke direktori

res = requests.get(url, stream = True)
2 yang baru dibuat. Selamat, sekarang Anda dapat meminta semua unduhan gambar yang diinginkan hati Anda 💖

Mengunduh Gambar Menggunakan urllib

Metode lain yang disukai untuk mengunduh data dengan Python adalah melalui

res = requests.get(url, stream = True)
3, sebuah paket yang mengumpulkan beberapa modul untuk bekerja dengan URL, termasuk

  • urllib. permintaan pembukaan dan pembacaan

  • urllib. parse untuk mengurai URL

  • urllib. kesalahan untuk setiap pengecualian yang diajukan oleh urllib. meminta

  • urllib. robotparser untuk parsing robot. file txt

Untuk mempelajari lebih lanjut tentang modul

res = requests.get(url, stream = True)
_3, lihat kembali dokumentasi , tetapi sekarang setelah Anda mengetahui dasar-dasarnya, saatnya untuk memulai

Jika

res = requests.get(url, stream = True)
_3 tidak ada di lingkungan Anda saat ini, instal dengan mengeksekusi kode di bawah ini

pip install urllib

Perhatikan bahwa jika Anda menggunakan Python 2, sayangnya, kode ini tidak akan berfungsi dengan lingkungan Anda, tetapi akhir bagian ini menyertakan skrip yang kompatibel dengan Python 2

Setelah

res = requests.get(url, stream = True)
_3 diinstal, buat direktori baru untuk proyek Anda,
res = requests.get(url, stream = True)
7. Langkah ini tidak perlu diulang jika sudah dibuat pada bagian sebelumnya. Di dalam direktori itu buat folder gambar, serta file
res = requests.get(url, stream = True)
8. Arahkan ke file
res = requests.get(url, stream = True)
_8 Anda, dan di bagian atas masukkan baris kode berikut untuk mengimpor paket
res = requests.get(url, stream = True)
3

import urllib.request

Dengan modul Anda diimpor, tugas Anda adalah membuat skrip ramah pengguna yang memungkinkan Anda mengunduh gambar dengan cepat dan teratur. Pertama, buat variabel

file_name = input('Save image as (string):') #prompt user for file name
_4 dari fungsi input

url = input('Please enter image URL (string):')

Kemudian putuskan apa yang Anda ingin simpan sebagai file gambar Anda, menggunakan pernyataan input lain

url = input('Please enter an image URL (string):') #prompt user for img url
0

Dengan dua variabel ini yang menyimpan data yang diperlukan untuk mengunduh dan mengatur file gambar yang baru Anda buat, tulis kode yang menyimpan gambar tersebut. Mulailah dengan mendefinisikan fungsi yang menggunakan tiga parameter, variabel

file_name = input('Save image as (string):') #prompt user for file name
4 Anda,
if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
3 yang ditunjuk tempat Anda ingin menyimpan gambar, dan
file_name = input('Save image as (string):') #prompt user for file name
6 yang ditetapkan sebelumnya

url = input('Please enter an image URL (string):') #prompt user for img url
1

Di dalam fungsi buat

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
_5 ke tempat gambar akan disimpan. Path lengkap gambar akan menjadi
if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
_3 dengan
file_name = input('Save image as (string):') #prompt user for file name
6 digabungkan, dan string
if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
8 ditambahkan di akhir. *Sama halnya jika Anda ingin menyimpan gambar Anda sebagai PNG, Anda akan menggunakan
if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
9

url = input('Please enter an image URL (string):') #prompt user for img url
2

Untuk membuat kode yang benar-benar mengunduh gambar, Anda harus mengintegrasikan

import requests # request img from web
import shutil # save img locally

url = input('Please enter an image URL (string):') #prompt user for img url
file_name = input('Save image as (string):') #prompt user for file_name

res = requests.get(url, stream = True)

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
0 dan
import requests # request img from web
import shutil # save img locally

url = input('Please enter an image URL (string):') #prompt user for img url
file_name = input('Save image as (string):') #prompt user for file_name

res = requests.get(url, stream = True)

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
1 yang akan mengunduh dan menyimpan gambar secara otomatis berdasarkan argumen yang diberikan, ✨untungnya Anda baru saja membuatnya. ✨

url = input('Please enter an image URL (string):') #prompt user for img url
_3

Panggil fungsi itu di akhir skrip Anda yang seharusnya mirip dengan ini

url = input('Please enter an image URL (string):') #prompt user for img url
_4

Saat Anda memanggil

import requests # request img from web
import shutil # save img locally

url = input('Please enter an image URL (string):') #prompt user for img url
file_name = input('Save image as (string):') #prompt user for file_name

res = requests.get(url, stream = True)

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
2 Anda harus melewati tiga argumen lagi, kali ini akan menjadi
file_name = input('Save image as (string):') #prompt user for file name
4 Anda, jalur file yang merupakan folder
import requests # request img from web
import shutil # save img locally

url = input('Please enter an image URL (string):') #prompt user for img url
file_name = input('Save image as (string):') #prompt user for file_name

res = requests.get(url, stream = True)

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
4 yang Anda buat di awal, dan nama_file yang Anda pilih

Percaya atau tidak, itu saja. Selama Anda berada di direktori

import requests # request img from web
import shutil # save img locally

url = input('Please enter an image URL (string):') #prompt user for img url
file_name = input('Save image as (string):') #prompt user for file_name

res = requests.get(url, stream = True)

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
_5 Anda, jalankan skrip Anda di terminal Anda dengan kode di bawah ini

url = input('Please enter an image URL (string):') #prompt user for img url
5

Kerja bagus. Anda baru saja mengunduh gambar pertama Anda dengan Python menggunakan paket

res = requests.get(url, stream = True)
3 😎

⛔︎ Jika Anda belum memutakhirkan Python 3, Anda mungkin menerima beberapa kesalahan terkait

import requests # request img from web
import shutil # save img locally

url = input('Please enter an image URL (string):') #prompt user for img url
file_name = input('Save image as (string):') #prompt user for file_name

res = requests.get(url, stream = True)

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
0, kode berikut harus kompatibel dengan Python 2

url = input('Please enter an image URL (string):') #prompt user for img url
_6

*Tidak seperti Python 3, versi 2 tidak mendukung paket

import requests # request img from web
import shutil # save img locally

url = input('Please enter an image URL (string):') #prompt user for img url
file_name = input('Save image as (string):') #prompt user for file_name

res = requests.get(url, stream = True)

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
0. Sebagai alternatif, Anda dapat mengimpor

urllib2 dan gunakan

import requests # request img from web
import shutil # save img locally

url = input('Please enter an image URL (string):') #prompt user for img url
file_name = input('Save image as (string):') #prompt user for file_name

res = requests.get(url, stream = True)

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
_9 untuk membaca url gambar, lalu unduh ke lingkungan lokal Anda. Namun, gambar sekarang akan disimpan langsung ke direktori
import requests # request img from web
import shutil # save img locally

url = input('Please enter an image URL (string):') #prompt user for img url
file_name = input('Save image as (string):') #prompt user for file_name

res = requests.get(url, stream = True)

if res.status_code == 200:
    with open(file_name,'wb') as f:
        shutil.copyfileobj(res.raw, f)
    print('Image sucessfully Downloaded: ',file_name)
else:
    print('Image Couldn\'t be retrieved')
5 alih-alih folder
python requests_python_img_dl.py
1. *

Menggunakan Modul Wget

Selain paket

python requests_python_img_dl.py
_2 dan
python requests_python_img_dl.py
3, Anda juga dapat mengunduh gambar dengan Python dengan menggunakan modul wget. Jika Anda telah membuat
python requests_python_img_dl.py
4 navigasi di dalam, jika tidak, buatlah sekarang. Di dalam direktori buat file
python requests_python_img_dl.py
_5 dan impor modul
python requests_python_img_dl.py
6 seperti itu

url = input('Please enter an image URL (string):') #prompt user for img url
_7

Setelah Anda menginstal dan mengimpor, atur variabel

file_name = input('Save image as (string):') #prompt user for file name
4 sama dengan pernyataan input yang menetapkan alamat gambar

url = input('Please enter image URL (string):')

Memanfaatkan

python requests_python_img_dl.py
8 meneruskan variabel
file_name = input('Save image as (string):') #prompt user for file name
4 sebagai argumen, dan mengaturnya sama dengan variabel
file_name = input('Save image as (string):') #prompt user for file name
6 Anda akan dapat mengaksesnya setelah itu

url = input('Please enter an image URL (string):') #prompt user for img url
_9

Skrip lengkapnya harus seperti ini

file_name = input('Save image as (string):') #prompt user for file name
0

Itu saja. Anda dapat menjalankan skrip Anda 🏃

file_name = input('Save image as (string):') #prompt user for file name
_1

Kami juga menulis artikel tentang menggunakan Python dengan wget , ini adalah cara hebat lainnya untuk menggunakan wget dengan Python

Kesimpulan

Seperti biasa, masing-masing metode ini membawa pro dan kontra. Jika Anda memiliki masalah dalam menginstal paket Permintaan atau menginginkan lebih sedikit ketergantungan pada program Anda, urllib mungkin menjadi pilihan terbaik Anda. Namun, modul Permintaan telah menjadi cara yang populer dan andal untuk mengunduh apa pun dengan Python, bahkan dokumentasi urllib merekomendasikannya sebagai antarmuka klien HTTP tingkat tinggi

Jika Anda mencari lebih banyak cara untuk mengunduh gambar dan jenis file dari web dengan Python, saya mendorong Anda untuk melihat posnya,

Saya harap Anda menemukan posting ini menyenangkan. Anda juga dapat mengakses kode sumber di sini. Selamat Menggores. 🐝

Sumber daya tambahan

  • Permintaan paket
  • modul wget

Bagaimana Anda menyimpan gambar dengan python?

Maxine Meurer

Maxine adalah seorang insinyur perangkat lunak dan penulis teknis yang bersemangat, yang senang menghabiskan waktu luangnya menggabungkan pengetahuannya tentang teknologi lingkungan ke dalam pengembangan web.

Bagaimana cara mengunduh dan menyimpan gambar dengan Python?

5 Cara Mudah Mengunduh Gambar dari URL dengan Python .
Metode 1. Gunakan permintaan. dapatkan() dan tulis()
Metode 2. Gunakan permintaan. dapatkan() dan Gambar
Metode 3. Gunakan permintaan. get() dan shutil
Metode 4. Gunakan urllib. meminta. urlretrieve()
Bonus. Unduh semua gambar menggunakan For loop

Bagaimana cara menyimpan file gambar?

Simpan gambar atau gambar lain sebagai file terpisah .
Control-klik ilustrasi yang ingin Anda simpan sebagai file gambar terpisah, lalu klik Simpan sebagai Gambar
Dalam daftar Simpan sebagai tipe, pilih format file yang Anda inginkan
Dalam kotak Simpan Sebagai, ketikkan nama baru untuk gambar tersebut, atau terima saja nama file yang disarankan

Bagaimana gambar disimpan dengan Python?

Menyimpan gambar pada disk, seperti. png atau. file jpg, cocok dan sesuai. .
Menyimpan gambar pada disk sebagai. file png
Menyimpan gambar dalam database yang dipetakan dengan memori petir (LMDB)
Menyimpan gambar dalam format data hierarkis (HDF5)

Bagaimana cara menyimpan file dengan Python?

Klik kanan jendela Python dan pilih Save As untuk menyimpan kode Anda sebagai file Python (. py) atau File teks (. txt). Jika menyimpan ke file Python, hanya kode Python yang akan disimpan.