python火山引擎接入api调用视频图像人像参考生成图片等技术示例代码

代码语言:python

所属分类:其他

代码描述:python火山引擎接入api调用视频图像人像参考生成图片等技术示例代码

代码标签: python 火山引擎 接入 api 调用 视频 图像 人像 参考 生成 图片 技术 示例 代码

下面为部分代码预览,完整代码请点击下载或在bfwstudio webide中打开

import json
import sys
import os
import base64
import datetime
import hashlib
import hmac
import requests


method
= 'POST'
host
= 'visual.volcengineapi.com'
region
= 'cn-north-1'
endpoint
= 'https://visual.volcengineapi.com'
service
= 'cv'

def sign(key, msg):
   
return hmac.new(key, msg.encode('utf-8'), hashlib.sha256).digest()

def getSignatureKey(key, dateStamp, regionName, serviceName):
    kDate
= sign(key.encode('utf-8'), dateStamp)
    kRegion
= sign(kDate, regionName)
    kService
= sign(kRegion, serviceName)
    kSigning
= sign(kService, 'request')
   
return kSigning

def formatQuery(parameters):
    request_parameters_init
= ''
   
for key in sorted(parameters):
        request_parameters_init
+= key + '=' + parameters[key] + '&'
    request_parameters
= request_parameters_init[:-1]
   
return request_parameters

def signV4Request(access_key, secret_key, service, req_query, req_body):
   
if access_key is None or secret_key is None:
       
print('No access key is available.')
        sys
.exit()

    t
= datetime.datetime.utcnow()
    current_date
= t.strftime('%Y%m%dT%H%M%SZ')
   
# current_date = '20210818T095729Z'
    datestamp
= t.strftime('%Y%m%d')  # Date w/o time, used in credential scope
    canonical_uri
= '/'
    canonical_querystring
= req_query
    signed_headers
= 'content-type;host;x-content-sha256;x-date'
    payload_hash
= hashlib.sha256(req_body.encode('utf-8')).hexdigest()
    content_type
= 'application/json'
    canonical_headers
= 'content-type:' + content_type + '\n' + 'host:' + host + \
       
'\n' + 'x-content-sha256:' + payload_hash + \
       
'\n' + .........完整代码请登录后点击上方下载按钮下载查看

网友评论0