将python脚本的输出返回到flask

2024-06-12 05:53:13 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个python脚本,从flask开始:

from flask import Flask, render_template, request, redirect, url_for
from transcode_audio_manual_stag_funct import get_epguid

application = Flask(__name__)

@application.route('/audiotranscode')
def homepage():
    html = render_template('homepage.html')
    return html

@application.route('/transcode', methods=['GET','POST'])
def transcode():
    dmguid = request.form['mediaid']
    get_epguid(dmguid)
    return redirect(url_for('homepage'))

if __name__ == '__main__':
    application.run(host='0.0.0.0')

脚本结束时,状态可以是failed(失败)或successful(成功)

    ...
    def register_lowres_depot(dmguid, url_register_audio):
        r = safegeturl(url_register_audio)
        root = ET.fromstring(r.content)
        jobID = root.text
        status = ''
        while not (status == '2' or status == '4'):
            url_status = url %jobID
            r = safegeturl(url_status)
            root = ET.fromstring(r.content)
            status = root.text
            print(dmguid, status)
            time.sleep(10)
        if status == '2':
            logger.info('{} successfully registered in depot'.format(dmguid))
        else:
            logger.warning('Failed to register audio lowres for {}'.format(dmguid))

    if __name__ == '__main__':
        get_epguid(dmguid)

如何将该状态返回到flask脚本并将其呈现给用户


Tags: name脚本registerurlflaskforgetapplication
1条回答
网友
1楼 · 发布于 2024-06-12 05:53:13

您可以使用make_resopnse()方法。无论您需要向用户展示什么,都要将其作为参数传递给此方法。如下图所示:

# case : Successful
resp = make_resopnse('{} successfully registered in depot'.format(dmguid))
resp.status_code = 200
return resp
# case : Failure
resp = make_resopnse('Failed to register audio lowres for {}'.format(dmguid))
resp.status_code = 500
return resp

注:以上内容非常通用

相关问题 更多 >