Python Flask+Pandas读取excel显示到html网页: 没有excle文件提示、不显示索引号、空值不显示NaN

前言全局说明

没有excle文件提示、不显示索引号、空值不显示NaN


一、安装flask模块

二、引用模块

三、启动服务

模块安装、引用模块、启动Web服务方法,参考下面链接文章:
https://www.cnblogs.com/wutou/p/17963563

Pandas 安装
https://www.cnblogs.com/wutou/p/17811839.html

Pandas 官方API说明
https://pandas.pydata.org/pandas-docs/stable/reference/index.html

修改内容后,要重启 flask 服务,修改才能生效


四、没有excle文件提示

4.1.1文件名:index.py

添加 try except 获取没有文件的异常

from flask import Flask

app=Flask(__name__)

@app.route("/excel_to_html")
def excel_to_html():
    if request.method == 'GET':
        excle_name='1e_to_h.xlsx'
        try:
            ## 读取EXCEL文件
            df = pd.read_excel(excle_name)
        except FileNotFoundError:
            return f'<h2>[ ERR ] 没有找到 "{excle_name}" 文件!!!<h2>'
        ## 转为html表格
        htm_table= df.to_html()
        ## 渲染模板
        return render_template('e_to_h.html')

if __name__ == '__main__':
    # app.debug = True
    # app.run(host='127.0.0.1',port = 5000)
    app.run(host='0.0.0.0',port = 5000)

e_to_h.xlsx 放到和 index.py 同目录下,可以指定绝对路径和相对路径

4.1.2 文件名:templates/index.html
<!DOCTYPE html>
<html lang="zh-cn">
    <head>
        <title>Excel to Web</title>
    </head>
    <body>
        <h1>h1 Excel to Web h1</h1>
        {{ table|safe }}
    </body>
</html>
4.2 访问连接:

http://127.0.0.1:5000/excel_to_html

4.3 效果:

image


五、不显示索引

5.1.1 文件名:index.py

将4.1.1 代码部分修改如下,增加 index=False

htm_table= df.to_html(index=False)
5.1.2 文件名:index.html
不变
5.2 访问连接:

http://127.0.0.1:5000/excel_to_html

5.3 效果:

显示索引号,不加 index=False
image

不显示索引号,加 index=False
image



六、空值不显示NaN

6.1.1 文件名:index.py

将4.1.1 代码部分修改如下,

df = pd.read_excel(excle_name, keep_default_na=False)
6.1.2 文件名:templates/index.html
不变
6.2 访问连接:

http://127.0.0.1:5000/excel_to_html

6.3 效果:

不写 keep_default_na 或 keep_default_na=True
image

增加 keep_default_na=False
image





免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果自负。




参考、来源:



posted @ 2024-04-16 12:20  悟透  阅读(46)  评论(0编辑  收藏  举报