烧瓶和异步任务,响应202

时间:2018-11-29 07:39:51

标签: python pandas flask flask-restful

im尝试使用Flask-RESTful构建端点。 目的之一是运行生成一些excel文件的脚本。

因此,如果为Flask服务器提供了“ GET”请求,则脚本将运行。

我想立即发送一条消息,说请求已被接受。

到目前为止,我的代码:

app.py:

from resources.runScripts import RunMauAndiMau

app = Flask(__name__)
api = Api(app)

api.add_resource(RunMauAndiMau, '/create_mau_imau')

if __name__ == '__main__':
    app.run(debug=True,threaded=True)

拨打电话http://127.0.0.1:5000/create_mau_imau

runScripts.py

from flask_restful import Resource
from scripts.createAnalysisData import MauAndiMau
from threading import Thread


class RunMauAndiMau(Resource):
    def get(self):
        mau_imau_class = MauAndiMau()
        Thread(target=mau_imau_class.createData).start()
        return {"message": "MAU,IMAU Data Processing Started"}, 202

createAnalysisData.py

from data.createFlatFileData import createFlatFileFromPandas

class MauAndiMau:
    def __init__(self):
        self.cd = createFlatFileFromPandas()

    def createData(self): 
        '''Some Data Operation'''
        self.cd.create_excel_from_pd(mau_imau,"mau_imau.xlsx")

createFlatFileData.py

import pandas as pd

class createFlatFileFromPandas:
    def create_excel_from_pd(self, df, filename):
        try:
            df.to_excel(filename, index=False)
            print("Data Formed:{}".format(str(filename)))
        except Exception as e:
            print("Data Creation Failed:{}".format(str(filename)))
            print("Exception:{}".format(str(e)))

文件的顺序也是程序的流程。

我正在尝试使用线程,但仍然没有立即发送响应。

我在做什么错了?

0 个答案:

没有答案