You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何无需GitHub本地分享Streamlit应用,让同事无代码启动?是否可生成exe/bat?

涉密本地Streamlit应用分享方案

关于exe/bat文件的可行性

完全可行,以下是三种适配你需求的实用方案:


方案1:BAT一键启动脚本(Windows快速方案)

适合不想折腾工具的场景,步骤简单:

  • 把你的Streamlit项目(含所有.py文件、requirements.txt)打包成压缩包发给同事
  • 同事先执行pip install -r requirements.txt安装依赖(如果同事没Python,你可以提前打包一个便携版Python环境一起发送)
  • 你创建一个.bat文件,内容如下:
@echo off
cd /d "D:\解压后的项目文件夹路径"  # 替换为同事电脑上的实际路径
streamlit run app.py
pause
  • 同事收到后双击BAT文件,直接启动本地应用,无需手动敲代码

方案2:Nativefier封装成桌面exe(跨平台)

你提到的Nativefier可以用,但需指向本地服务地址而非Streamlit Sharing链接,调整后的步骤:

  1. 安装Nativefier(需先安装Node.js):
npm install -g nativefier
  1. 本地启动你的Streamlit应用,确认地址为http://localhost:8501
  2. 执行打包命令(以Windows为例,mac/linux替换platform参数):
nativefier --name "涉密数据分析工具" "http://localhost:8501" --platform windows
  1. 把生成的exe、Streamlit项目、依赖环境和启动BAT一起发给同事,同事先启动BAT开启本地服务,再双击exe就能看到桌面化的应用界面

方案3:PyInstaller打包成独立exe(无Python依赖)

如果想让同事完全不用管Python环境,推荐这个方案:

  1. 安装PyInstaller:
pip install pyinstaller
  1. 编写启动脚本start_app.py:
import streamlit.web.cli as stcli
import sys

def main():
    sys.argv = ["streamlit", "run", "app.py", "--server.port=8501"]
    stcli.main()

if __name__ == "__main__":
    main()
  1. 执行打包命令:
pyinstaller --onefile --windowed start_app.py
  1. 把dist文件夹里的exe和你的Streamlit项目文件放在一起发给同事,双击exe直接启动应用,全程不需要Python环境

内容的提问来源于stack exchange,提问作者Tong

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 13:35:22