首先得注册阿里云账号,所使用到的是阿里云的对象存储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)