# Excel_Show **Repository Path**: attackontitan/excel-show ## Basic Information - **Project Name**: Excel_Show - **Description**: 基于streamlit的可前端修改excel的简单程序 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master_dev - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2023-07-19 - **Last Updated**: 2024-09-23 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Excel_Show ### 介绍 基于streamlit的可前端修改excel的简单程序; 配置了一些pyinstaller文件,使其能打包到单机环境。 ### 软件架构 .streamlit:运行打包后程序需要的配置文件,规定端口 hooks:打包时需要的配置文件,获取本机streamlit包位置以便打包 main.py:基于streamlit的前后端逻辑程序 run_main.py:脚本化执行main.py(脚本化对于打包成exe程序是必须的) ### 打包教程 1. 最好在虚拟环境安装好依赖的包: ``` pip install -r requirements.txt ``` 2. 执行如下打包命令生成spec文件: ``` pyinstaller --onefile --additional-hooks-dir=./hooks run_main.py --clean ``` 3. 修改生成的spec文件的a中datas: ``` a = Analysis( ... datas=[ ( "${YOURPYTHONENV}/Lib/site-packages/streamlit/static", "./streamlit/static" ), ( "${YOURPYTHONENV}/Lib/site-packages/streamlit/runtime", "./streamlit/runtime" ), ( "${YOURPYTHONENV}/Lib/site-packages/pyarrow/vendored", "./pyarrow/vendored" ) ], ... ) ``` 以上配置作用为streamlit需要依赖众多包,且其对pyinstaller的支持很差,会有部分依赖无法打包进来,因此在datas中补充。 _然而st_aggrid仍无法以此法打包进来_ 4. 最后执行: ``` pyinstaller run_main.spec ``` 完成打包。 **需要注意的是:最后使用时,需要将.streamlit 和 main.py复制 到exe 所在的dist文件夹内** ### 使用说明 将.streamlit和main.py复制到exe所在的dist文件夹内。 首先新建data目录,将待操作文件放到data目录下,之后双击运行run_main.exe,弹出本地浏览器并操作。 选择文件打开时,只能选data目录下的文件,且表头、sheet名称需与test.xlsx完全一致。