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)))
文件的顺序也是程序的流程。
我正在尝试使用线程,但仍然没有立即发送响应。
我在做什么错了?