Pelajari Python untuk melaksanakan dok antara muka Awan Qiniu dan pemangkasan imej dan penggabungan
Dalam beberapa tahun kebelakangan ini, perkembangan pesat perkhidmatan awan telah menyediakan pembangun dengan lebih banyak sokongan teknikal dan kemudahan. Sebagai salah satu penyedia perkhidmatan awan, Qiniu Cloud Platform menyediakan siri fungsi dan antara muka yang kaya, membolehkan pembangun menyimpan dan mengurus fail dengan mudah.
Dalam artikel ini, kita akan belajar cara menggunakan Python untuk menyambung ke antara muka Awan Qiniu dan melaksanakan fungsi pemangkasan dan penggabungan imej. Pertama, kita perlu membuat akaun pada platform Awan Qiniu, mencipta ruang storan dan mendapatkan Kunci Akses dan Kunci Rahsia kami, serta nama ruang storan yang dibuat.
Seterusnya, kita perlu memasang Qiniu Cloud SDK untuk Python, yang boleh dipasang melalui arahan berikut:
pip install qiniu
Selepas pemasangan selesai, kita boleh mula menulis kod. Pertama, kita perlu mengimport perpustakaan yang diperlukan:
import qiniu import requests from PIL import Image
Kemudian, kita perlu menetapkan parameter Qiniu Cloud:
access_key = 'Your Access Key' secret_key = 'Your Secret Key' bucket_name = 'Your Bucket Name'
Seterusnya, kita perlu mencipta objek pengesahan untuk Qiniu Cloud:
auth = qiniu.Auth(access_key, secret_key)
Sekarang, kita boleh mencipta muat naik Fungsi menghantar gambar ke Qiniu Cloud Fungsi ini boleh menerima laluan gambar setempat sebagai parameter dan mengembalikan URL gambar yang dimuat naik:
def upload_image(filepath): token = auth.upload_token(bucket_name) ret, info = qiniu.put_file(token, None, filepath) if ret is not None and ret['key'] is not None: return f"https://{bucket_name}.qiniudn.com/{ret['key']}" else: return None
Seterusnya, kami mencipta fungsi untuk memangkas gambar. Fungsi ini menerima URL imej dan parameter pemangkasan sebagai input dan mengembalikan URL imej yang dipangkas.
def crop_image(image_url, x, y, width, height): response = requests.get(image_url) image = Image.open(BytesIO(response.content)) cropped_image = image.crop((x, y, x+width, y+height)) cropped_image_url = f"{image_url}-cropped" cropped_image.save("cropped.jpg") cropped_image_url = upload_image("cropped.jpg") return cropped_image_url
Akhir sekali, mari kita laksanakan fungsi penggabungan imej. Fungsi ini menerima URL dua imej sebagai input dan mengembalikan URL imej yang digabungkan.
def merge_images(image_url1, image_url2): response1 = requests.get(image_url1) response2 = requests.get(image_url2) image1 = Image.open(BytesIO(response1.content)) image2 = Image.open(BytesIO(response2.content)) merged_image = Image.new('RGB', (image1.width + image2.width, max(image1.height, image2.height))) merged_image.paste(image1, (0, 0)) merged_image.paste(image2, (image1.width, 0)) merged_image_url = f"{image_url1}-merged" merged_image.save("merged.jpg") merged_image_url = upload_image("merged.jpg") return merged_image_url
Kini, kita boleh menulis contoh mudah untuk menunjukkan cara menggunakan fungsi ini:
if __name__ == '__main__': image_url1 = upload_image("image1.jpg") image_url2 = upload_image("image2.jpg") cropped_image_url = crop_image(image_url1, 100, 100, 200, 200) merged_image_url = merge_images(cropped_image_url, image_url2) print("Cropped image url:", cropped_image_url) print("Merged image url:", merged_image_url)
Melalui kod contoh di atas, kami telah mempelajari cara menggunakan Python untuk melaksanakan dok antara muka Awan Qiniu, dan melalui antara muka yang disediakan oleh Platform Awan Qiniu Melaksanakan pemangkasan dan penggabungan imej. Boleh dikatakan bahawa fungsi hebat Qiniu Cloud dan kemudahan Python memberikan lebih banyak kemungkinan kepada pembangun.
Atas ialah kandungan terperinci Belajar Python untuk melaksanakan dok antara muka Awan Qiniu dan pemangkasan dan penggabungan imej. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!