前端传PPT文件到阿里云,后台把PPT文件存储为图片

首先得注册阿里云账号,所使用到的是阿里云的对象存储OSS智能媒体管理服务
阿里云用到的服务

进入智能媒体管理,选择地区新建项目
在这里插入图片描述

新建项目,注意授权角色权限
在这里插入图片描述

进入对象存储新建一个Bucket,在上传任何文件(Object)到 OSS 之前,您首先需要创建存储空间(Bucket)用来存储文件。存储空间具有各种配置属性,包括地域、访问权限、存储类型等。
在这里插入图片描述

OSS绑定智能媒体管理项目(文档功能 栏选择 配置好的项目)
在这里插入图片描述

注意:OSS存储的文件和智能多媒体需要在同一个地区。
在这里插入图片描述

获取阿里云访问密钥
阿里云主账号AccessKey拥有所有API的访问权限,风险很高。强烈建议您创建并使用RAM账号进行API访问或日常运维,请登录 https://ram.console.aliyun.com 创建RAM账号。
为了使用 IMM Service Python SDK,您必须申请阿里云的 访问密钥。登录阿里云 密钥管理页面。选择一对用于 SDK 的访问密钥对。如果没有,请创建一对新访问密钥,且保证它处于启用状态。

需求:前端上传一个PPT文件到阿里云OSS中,后端实现该PPT每页转为图片。

参考文档

Python代码分为以下的步骤:
创建 Client 实例。在创建 Client 实例时,您需要获取 Region ID、AccessKey ID 和 AccessKey Secret。
创建 API 请求并设置参数。
发起请求并处理应答或异常。

import json

from aliyunsdkcore.client import AcsClient
from aliyunsdkimm.request.v20170906 import CreateOfficeConversionTaskRequest, GetOfficeConversionTaskRequest

client = AcsClient(access_key_id, access_key_secret, mps_region_id);

# 执行ppt转图片
def change():
    createReq = CreateOfficeConversionTaskRequest.CreateOfficeConversionTaskRequest()
    srcUri = "oss://ququ/test.pptx"  # oss 的配置
    tgtUri = "oss://ququ/output/test"  # oss 的配置
    tgtType = "png"
    createReq.set_Project("ppt2png")  # 智能媒体管理 配置
    createReq.set_SrcUri(srcUri)
    createReq.set_TgtUri(tgtUri)
    createReq.set_TgtType(tgtType)
    response = client.do_action_with_exception(createReq)
    print(response)
    res = json.loads(response)
    taskId = res["TaskId"]
    print(taskId)
    return taskId

# 查询转换结果
def get_res(taskId):
    getReq = GetOfficeConversionTaskRequest.GetOfficeConversionTaskRequest()
    getReq.set_Project("ppt2png")
    getReq.set_TaskId(taskId)
    response = client.do_action_with_exception(getReq)
    print(response)
    status = json.loads(response)["Status"]
    if status == "Finished":  # 任务完成
        print("Task finished.")
    if status == "Failed":  # 任务失败
        print("Task failed.")


if __name__ == '__main__':
    taskId = change()
    get_res(taskId)
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值