def test(): #获取文件 files = request.files #合成队列 videoL = [] #随机字符串 dirs = sjs() #生成文件夹 os.mkdir(dirs) #保存文件并添加至合成队列 for file in files.values(): print(file) dst = dirs + "/" + file.name + ".mp4" file.save(dst) video = VideoFileClip(dirs + "/" + file.name + ".mp4") videoL.append(video) #拼接视频 final = concatenate_videoclips(videoL) #文件路径 fileName = dirs + "/" +"{}.mp4".format(sjs()) #生成视频 final.to_videofile(fileName) #销毁文件夹 def sc(): shutil.rmtree(dirs) #30秒后销毁文件夹 timer = threading.Timer(30, sc) timer.start() # 返回文件路径 return fileName
def voi(): '''获取前端传参result的值''' conts = request.args['result'] '''获取前端传参type的值''' type = request.args['type'] '''获取合成结果''' result = voice(conts, int(type)) '''随机文件名''' sj = sjs() '''生成mp3文件''' with open("{}.mp3".format(sj), 'wb') as f: f.write(result) f.close() '''将向前端返回语音合成文件加入返回参数''' response = make_response(send_file("{}.mp3".format(sj))) '''定时任务函数,发送完数据后删除mp3文件''' def sc(): os.remove("{}.mp3".format(sj)) '''定时任务,任务开启3秒后调用定时任务函数删除mp3文件''' timer = threading.Timer(3, sc) '''开启任务''' timer.start() '''返回数据''' return response
def delBodys(): '''接收文件''' params_file = request.files['file'] '''随机文件名''' dst = os.path.join(os.path.dirname(__file__), sjs() + params_file.name) '''保存文件''' params_file.save(dst) '''文件流变量''' cont = "" '''读取文件''' with open(dst, 'rb') as file: cont = file.read() '''删除文件''' os.remove(dst) '''获取前端传参type的值''' type = int(request.form['type']) '''判断是否为图像分割,图像分割需要返回图片''' if (type == 5): '''获取图像分割结果''' ss = json.loads(json.dumps(delBody(type, cont))) '''得到人物抠图''' ssr = ss['foreground'] '''处理得到的数据''' imgdata = base64.b64decode(ssr) '''随机文件名''' send_s = sjs() '''保存文件''' with open('{}.png'.format(send_s), 'wb') as filess: filess.write(imgdata) filess.close() '''定时任务函数,发送完数据后删除mp3文件''' def sc(): os.remove("{}.png".format(send_s)) '''定时任务,任务开启20秒后调用定时任务函数删除mp3文件''' timer = threading.Timer(20, sc) '''任务开启''' timer.start() '''返回分割得到的图片的文件名''' return send_s '''返回分析数据''' return json.dumps(delBody(type, cont))
def getB64(): params_file = request.files['file'] dst = os.path.join(os.path.dirname(__file__), sjs() + params_file.name) params_file.save(dst) cont = "" with open(dst, 'rb') as file: cont = file.read() bas64D = base64.b64encode(cont) os.remove(dst) return bas64D
def upfile(): '''接收文件''' params_file = request.files['file'] '''随机文件名''' dst = os.path.join(os.path.dirname(__file__), sjs() + params_file.name) '''保存文件''' params_file.save(dst) '''文件流变量''' cont = "" '''读取文件''' with open(dst, 'rb') as file: cont = file.read() '''删除文件''' os.remove(dst) '''获取表单数据type''' type = int(request.form['type']) '''返回识别结果''' return json.dumps(get_imgGeneral(type, cont))