Maison  >  Article  >  développement back-end  >  Apprenez Python pour implémenter la fonction d'accueil de l'interface Qiniu Cloud et la fonction de conversion d'image

Apprenez Python pour implémenter la fonction d'accueil de l'interface Qiniu Cloud et la fonction de conversion d'image

WBOY
WBOYoriginal
2023-07-08 10:09:121647parcourir

Apprenez Python pour implémenter l'accueil de l'interface Qiniu Cloud et réaliser la fonction de conversion d'image

Introduction :
Avec le développement d'Internet, les images jouent un rôle très important dans notre vie quotidienne. Dans le développement de sites Web, la conversion d'images est une exigence courante, comme la mise à l'échelle, le recadrage ou la conversion de format de l'image. Qiniu Cloud est un fournisseur de services de stockage cloud bien connu en Chine, qui propose des fonctions de traitement d'image puissantes et stables. Cet article expliquera comment utiliser le langage Python pour se connecter à l'interface de Qiniu Cloud afin de réaliser la fonction de conversion d'image.

1. Préparation :

  1. Enregistrez un compte Qiniu Cloud et créez un espace de stockage.
  2. Installez la bibliothèque de requêtes de Python pour envoyer des requêtes HTTP.
  3. Obtenez la clé d'accès et la clé secrète de l'espace de stockage cloud Qiniu.

2. Importer des bibliothèques dépendantes :
Pour utiliser la bibliothèque de requêtes pour envoyer des requêtes HTTP dans un projet Python, nous devons d'abord importer la bibliothèque de requêtes dans le code.

import requests

3. Obtenez le certificat de téléchargement de Qiniu Cloud :
Avant de télécharger des images, nous devons d'abord obtenir un certificat de téléchargement. Le certificat de téléchargement de Qiniu Cloud est un jeton utilisé pour télécharger des fichiers et est utilisé pour vérifier la légalité du comportement de téléchargement. Le code suivant montre comment obtenir les informations d'identification de téléchargement via l'API de Qiniu Cloud.

access_key = 'your_access_key'  # 七牛云的AccessKey
secret_key = 'your_secret_key'  # 七牛云的SecretKey
bucket_name = 'your_bucket_name'  # 存储空间名称

def get_upload_token(access_key, secret_key, bucket_name):
    url = 'http://api.qiniu.com/put-policy/{}/put-policy'.format(bucket_name)
    auth = requests.auth.HTTPBasicAuth(access_key, secret_key)
    response = requests.get(url, auth=auth)
    result = response.json()
    if 'token' in result:
        return result['token']
    else:
        raise ValueError('Failed to get upload token.')

upload_token = get_upload_token(access_key, secret_key, bucket_name)

4. Téléchargez les fichiers image :
Après avoir obtenu le certificat de téléchargement, nous pouvons commencer à télécharger les fichiers image. Dans Qiniu Cloud, nous pouvons utiliser une clé personnalisée pour identifier les ressources de fichiers téléchargés. Le code suivant montre comment utiliser le langage Python pour télécharger des fichiers image sur Qiniu Cloud.

def upload_image(file_path, upload_token):
    url = 'http://upload.qiniu.com/'
    headers = {
        'Content-Type': 'multipart/form-data',
    }
    files = {'file': open(file_path, 'rb')}
    data = {'token': upload_token}
    response = requests.post(url, headers=headers, files=files, data=data)
    result = response.json()
    if 'key' in result:
        return result['key']
    else:
        raise ValueError('Failed to upload image.')

image_path = 'your_image_path'  # 待上传的图片文件路径
image_key = upload_image(image_path, upload_token)

5. Effectuer des opérations de conversion d'image :
Après avoir téléchargé avec succès le fichier image, nous pouvons effectuer diverses opérations de conversion sur l'image via l'API de Qiniu Cloud. Qiniu Cloud fournit de nombreuses fonctions puissantes de traitement d'image, telles que la mise à l'échelle de l'image, le recadrage, la conversion de format, etc. Le code suivant montre comment utiliser le langage Python pour appeler l'interface de Qiniu Cloud afin de réaliser la mise à l'échelle de l'image et la conversion de format.

def image_tranformation(image_key, new_image_key, width, height, format):
    url = 'http://api.qiniu.com/image/v2/{}'.format(image_key)
    headers = {
        'Content-Type': 'application/x-www-form-urlencoded',
    }
    params = {
        'imageView2': '/{}.w_{}/h_{}/format/{}'.format(new_image_key, width, height, format),
    }
    response = requests.get(url, headers=headers, params=params)
    with open(new_image_key, 'wb') as f:
        f.write(response.content)

new_image_key = 'your_new_image_key'  # 新生成的图片文件key
width = 500  # 新图片的宽度
height = 500  # 新图片的高度
format = 'jpg'  # 新图片的格式
image_tranformation(image_key, new_image_key, width, height, format)

6. Résumé :
Cet article présente comment utiliser le langage Python pour se connecter à l'interface de Qiniu Cloud afin de réaliser la fonction de conversion d'image. En étudiant cet article, vous pourrez maîtriser l'utilisation du langage Python et de l'API de Qiniu Cloud pour télécharger et convertir des images. J'espère que cet article pourra vous être utile lorsque vous utilisez Qiniu Cloud pour le traitement d'images.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn