gpt4 book ai didi

集成flask的Python代码结构

转载 作者:太空宇宙 更新时间:2023-11-03 16:23:32 24 4
gpt4 key购买 nike

[新手]我编写了一个Python程序,它对导入的xlsx文件进行一些数据操作并将它们保存为csv。它看起来有点像这样:

#!/usr/bin/env python2.7    

def main():

imported_files = import_files_from_input_folder('/input/*.xlsx')

data_handling_functions(imported_files)

save_processed_files_to_output_folder('/output/')

if __name__ = '__main__':

main()

我想创建一个网络应用程序(使用 flask )供用户使用该程序,将文件上传到“输入”文件夹,然后从“输出”文件夹下载结果。感谢this topic和其他一些人,我知道如何将多个文件上传到“输入”文件夹中。

现在,我的第一个问题是:如何列出“输出”文件夹中的所有文件并让用户下载它们?

我的第二个问题是:如何将flask部分包装/集成到现有程序中?

最佳答案

这是基本 Flask Web 服务器的样子:

from flask import Flask
app = Flask(__name__)

@app.route("/")
def hello():
return "Hello World!"

if __name__ == "__main__":
app.run()

因此,将您的功能集成到应用程序中非常简单。只需添加一个路由函数(如 hello)并调用您通常在代码的 main 内部调用的函数,然后在网页上呈现结果以及一些下载按钮。为此,您可以使用函数 render_template 并将输出(以可以迭代以获取每个文件的方式进行更改)作为参数,如下所示:

@app.route("/")
def hello():
return render_template('name_of_template', output = your_output)

您可以找到 Flask 文档 here它会告诉你如何做到这一切。我建议您使用 jinja2 API 将 Python 代码添加到您的 HTML 模板中,例如你可以这样做:

{% for file in output %}
<!-- Output file inside html tag -->
<!-- Add a download button -->
{% endfor %}

您可以找到有关 Jinja 的更多信息 here

当然,您可以将 CSV 存储在您的服务器上。

关于集成flask的Python代码结构,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38207220/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com