Dapatkan gambar dari url python

Bekerja dengan gambar dengan Python menjadi topik yang sangat populer dalam beberapa tahun terakhir. Tugas dan otomatisasi berkisar dari pemrosesan gambar serupa hingga proyek yang lebih maju seperti ekstraksi teks

Gambar pelatihan dan pengujian biasanya tersedia secara lokal atau diunduh dari situs web yang berbeda

Dengan menggunakan Python, kami dapat mengotomatiskan pengunduhan gambar dari berbagai URL dan halaman web

Untuk terus mengikuti tutorial ini, kita membutuhkan pustaka Python berikut. permintaan

Permintaan adalah pustaka Python sederhana yang memungkinkan Anda mengirim permintaan HTTP

Jika Anda belum menginstalnya, silakan buka "Command Prompt" (di Windows) dan instal menggunakan kode berikut


pip install requests

Unduh gambar dari URL menggunakan Python

Pada bagian ini kita akan belajar cara mengunduh gambar dari URL menggunakan Python

Di sini, kami menganggap Anda memiliki URL gambar tertentu (dan bukan hanya halaman web)


Sebagai langkah pertama, kami akan mengimpor ketergantungan yang diperlukan dan menentukan fungsi yang akan kami gunakan untuk mengunduh gambar, yang akan memiliki 3 masukan

  1. url – URL dari gambar tertentu
  2. file_name – nama untuk gambar yang disimpan
  3. header – kamus HTTP Header yang akan dikirim dengan permintaan

import requests


def download_image(url, file_name, headers):
_

Sekarang kami dapat mengirim permintaan GET ke URL bersama dengan header, yang akan mengembalikan Respons (respons server terhadap permintaan HTTP)


import requests


def download_image(url, file_name, headers):

    #Send GET request
    response = requests.get(url, headers=headers)

Jika permintaan HTTP telah berhasil diselesaikan, kami akan menerima kode Respons 200 (Anda dapat mempelajari lebih lanjut tentang kode respons di sini)

Kami akan memeriksa apakah kode respons adalah 200, dan jika ya, kami akan menyimpan gambar (yang merupakan konten permintaan), jika tidak, kami akan mencetak kode respons


import requests


def download_image(url, file_name, headers):

    # Send GET request
    response = requests.get(url, headers=headers)

    # Save the image
    if response.status_code == 200:
        with open(file_name, "wb") as f:
            f.write(response.content)
    else:
        print(response.status_code)

Fungsi untuk mengunduh gambar dari URL sudah siap dan sekarang kita hanya perlu menentukan url, nama_file, dan header, lalu jalankan kodenya

Misalnya, di salah satu tutorial sebelumnya, kami menggunakan beberapa contoh gambar, dan Anda dapat menemukan salah satunya di sini

URLnya terlihat seperti ini

https://pyshark.com/wp-content/uploads/2022/05/sampletext1-ocr-539x450.png
_

Anda dapat melihat bahwa ia memiliki. png, artinya ini adalah URL ke gambar tertentu

Kami akan menyimpan gambar ini sebagai 'image1. png'

Untuk header kami hanya menggunakan header permintaan User-Agent yang memungkinkan server mengidentifikasi aplikasi agen pengguna yang meminta (program komputer yang mewakili seseorang, seperti browser atau aplikasi yang mengakses Halaman Web)


import requests


def download_image(url, file_name, headers):

    # Send GET request
    response = requests.get(url, headers=headers)

    # Save the image
    if response.status_code == 200:
        with open(file_name, "wb") as f:
            f.write(response.content)
    else:
        print(response.status_code)


if __name__ == "__main__":

    # Define HTTP Headers
    headers = {
        "User-Agent": "Chrome/51.0.2704.103",
    }

    # Define URL of an image
    url = "https://pyshark.com/wp-content/uploads/2022/05/sampletext1-ocr-539x450.png"

    # Define image file name
    file_name = "image1.png"

    # Download image
    download_image(url, file_name, headers)

Jalankan kode dan Anda akan melihat image1. png dibuat di direktori yang sama dengan main. py file dengan kode

Dapatkan gambar dari url python


Kesimpulan

Pada artikel ini kami menjelajahi cara mengunduh gambar dari URL dan Halaman Web menggunakan Python

Jangan ragu untuk meninggalkan komentar di bawah jika Anda memiliki pertanyaan atau memiliki saran untuk beberapa pengeditan dan lihat lebih lanjut tutorial Pemrograman Python saya

Cara yang lebih baik adalah dengan menggunakan paket permintaan. Berikut adalah contoh sederhana untuk mengunduh gambar menggunakan permintaan

import requests

url = "https://cdn.pixabay.com/photo/2020/05/12/17/04/wind-turbine-5163993_960_720.jpg"

r = requests.get(url)
with open("wind-turbine.jpg", "wb") as f:
    f.write(r.content)
_

Mengunduh file besar dengan streaming

tanggapan. iter_content

Pada kode di atas, semua konten gambar akan dibaca ke dalam memori sekaligus. Jika gambarnya besar, mungkin menghabiskan terlalu banyak memori

Sebagai alternatif, kita dapat menyetel parameter stream_ ke True untuk permintaan streaming. Dalam hal ini, hanya header respons yang diunduh. Kita dapat mengambil gambar secara keseluruhan menggunakan response.content atau potongan demi potongan dengan menggunakan metode

# Using requests to download large files.
with requests.get(url, stream=True) as r:
    with open("wind-turbine.jpg", "wb") as f:
        for chunk in r.iter_content(chunk_size=1024):
            if chunk:
                f.write(chunk)

tanggapan. mentah

Ketika stream adalah True, kita juga dapat menggunakan

import urllib.request

# The following way works. Ref: https://stackoverflow.com/a/45358832/6064933
req = urllib.request.Request(url, headers={'User-Agent': 'Mozilla/5.0'})
with open("wind_turbine.jpg", "wb") as f:
    with urllib.request.urlopen(req) as r:
        f.write(r.read())
2 untuk mengalirkan unduhan.
import urllib.request

# The following way works. Ref: https://stackoverflow.com/a/45358832/6064933
req = urllib.request.Request(url, headers={'User-Agent': 'Mozilla/5.0'})
with open("wind_turbine.jpg", "wb") as f:
    with urllib.request.urlopen(req) as r:
        f.write(r.read())
_2 adalah objek seperti file. Dengan bantuan
import urllib.request

# The following way works. Ref: https://stackoverflow.com/a/45358832/6064933
req = urllib.request.Request(url, headers={'User-Agent': 'Mozilla/5.0'})
with open("wind_turbine.jpg", "wb") as f:
    with urllib.request.urlopen(req) as r:
        f.write(r.read())
_4, kita dapat menyimpan gambar seperti ini

Bagaimana cara mengambil gambar dari URL dengan Python?

Pada artikel ini, kita akan belajar Cara membuka gambar dari URL menggunakan modul PIL dengan python. .
Salin URL gambar apa pun
Tulis URL dengan nama file di urllib. meminta. urlretrieve() metode
Gunakan Gambar. metode open() untuk membuka gambar
Akhirnya tampilkan gambar menggunakan obj. tampilkan() metode

Bagaimana cara mengunduh gambar dari URL?

Klik tombol Unduh Gambar dari URL, bidang akan muncul di sebelah kanan. Masukkan alamat web lengkap gambar. Klik panah di sebelah kanan bidang dan pilih kotak centang Force Check. Kemudian klik tombol Simpan

Bagaimana cara mengambil gambar dengan Python?

5 Cara Menampilkan Gambar dengan Python .
OpenCV
Matplotlib
Bantal
Scikit-Gambar
Tensorflow

Bagaimana cara membaca konten gambar dengan Python?

Perpustakaan Python . Artinya, ia akan mengenali dan “membaca” teks yang disematkan dalam gambar. Python-tesseract adalah pembungkus untuk Mesin Tesseract-OCR Google. Python-tesseract is an optical character recognition (OCR) tool for python. That is, it will recognize and “read” the text embedded in images. Python-tesseract is a wrapper for Google's Tesseract-OCR Engine.