栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

用streamlit做课设部署到streamlit cloud遇到的问题

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

用streamlit做课设部署到streamlit cloud遇到的问题

文章目录
    • 写代码
      • 生成requirements.txt有两种方式:
    • 在github上建立一个新的仓库
      • 如果注册邮箱的过程中,手机收不到验证码:
    • 上传或删除文件到github仓库
    • 部署到streamlit cloud

课设要求:先爬取合肥的二手房数据(如果没问题的话),在此技术上,初步做一个系统原型,能够对二手房价格进行预测,以及实现二手房数据的查询,以Web展现。

写代码
#cmd
C:Users86182.spyder-py3二手房价格预测>#主文件夹,所有文件放在该目录下
C:Users86182.spyder-py3二手房价格预测>dir
C:Users86182.spyder-py3二手房价格预测 的目录

2022-06-10  20:02              .
2022-06-10  08:47              ..
2022-06-09  14:02                42 .gitignore
2022-06-10  20:02                 0 2.10.1
2022-06-10  20:02                 0 3.0
2022-06-10  15:35             3,312 a.txt
2022-06-08  21:44               532 app.py
2022-06-08  21:35              image
2022-06-09  14:02              Lib
2022-06-10  09:19       119,378,901 model.pkl
2022-06-08  10:26               509 multipage.py
2022-06-10  15:40              pages
2022-06-09  09:28                40 Procfile
2022-06-09  14:02               405 pyvenv.cfg
2022-06-10  09:00               627 Requirements.txt
2022-06-09  14:02              Scripts
2022-06-09  10:00               220 setup.sh
2022-06-08  19:37             2,246 streamlit1.py
2022-06-09  21:12              style
2022-06-07  20:16           692,241 train2.csv
2022-06-07  14:58         1,028,312 train2.xlsx
2022-06-08  10:41              __pycache__
2022-06-07  11:34         9,916,227 链家二手房分区.csv
2022-06-07  15:07            66,522 随机森林.png
              16 个文件    131,090,136 字节
               8 个目录 146,945,273,856 可用字节

C:Users86182.spyder-py3二手房价格预测pages 的目录
2022-06-09  23:17               394 gross_data.py
2022-06-09  23:17             4,640 home.py
2022-06-10  15:40             3,265 predict.py
2022-06-09  23:17             1,600 research.py
2022-06-08  22:18             4,405 visualization.py

#cd ..可以回退到上一级目录,dir可以显示当前目录下的所有文件
#主文件夹下的model.pkl本来是封装了一个训练好的随机森林的模型,
#但是由于.pkl文件太大,无法手动上传到github上(好像超过25MB就不行了),
#而git lfs上传总是报错(搞了半天也解决不了),
#所以只能不打包训练好的模型,而是把训练代码放在predict.py里面。

以上不是代码,只是在cmd的命令行操作
在spyder上写好代码,在anaconda prompt上运行

(base) C:Users86182.spyder-py3二手房价格预测>streamlit run app.py

  You can now view your Streamlit app in your browser.
  Local URL: http://localhost:8501
  Network URL: http://192.168.43.213:8501

主目录下除了放main.py之外,还需要Procfile、requirements.txt、setup.sh
Procfile、setup.sh参考文章链接: 如何利用streamlit快速搭建一个web应用并部署到heroku服务器上
requirements.txt时代码运行时依赖的包

生成requirements.txt有两种方式:

1.这种方式会把所有的依赖包全部加入

pip freeze > requirements.txt

我使用的是这种方式,因为不知道什么原因,用第二种方式总是会报错

2.只加入该项目的依赖包
到项目目录下

pipreqs ./ --enoding=utf-8 --force
在github上建立一个新的仓库

链接: https://github.com/
登不上github可以下载pigcha(一个付费的vpn,不贵,而且不是包月或者包年,我上次买的是到2099年才过期,非常好下载非常好用,支持手机和pc),注册一个google邮箱

如果注册邮箱的过程中,手机收不到验证码:

上google网站(我是在IE浏览器上注册的,QQ浏览器不行),点右上角九个点,找到Gmail,在这里注册就可以了

进入github ,new一个新的respository,顺便复制一下url:
https://git@github.com/…/仓库名.git

上传或删除文件到github仓库

github可以手动上传文章,用git命令上传我会报错,也解决不了(流汗)
手动上传,create file时在文件名后面输入“/”就可以变成一个文件夹,就可以upload文件了(毕竟github手动无法上传文件夹,同时无法上传大文件,也无法删除文件)
删除respository可以在setting里拖到最底下选择delete
但是删除文件,需要如下操作:

git bash:就是选择文件夹,右击选择git bash here,就可以打开,有什么命令没有了就pip一下(没有git的 去官网下载一下)
下面的操作看这个文章:
链接: 删除github中已有的仓库和文章

部署到streamlit cloud

说一下我遇到的问题:

由于我导入的requirements.txt是用pip freeze(本地我也保存了用pipreqs生成的requirements.txt,方便查看我的项目用到了哪些包)所以有很多的包是无用的,耗时间是次要的,莫名其妙经常报错,然后就需要回github上删除报错的多余的包,遇到一个最离谱的问题:
Jjinja2 2.11.3
altair 4.0.2 depends on Jinja2
nbconvert 6.5.0 depends on Jinja2>=3.0
pyg2plot 0.108 depends on Jinja2~=2.11.2
幸好我的项目只用到了pyg2plot module,只要删除其他的包,再修改JInja2的版本就可以了

-[1]:如何利用streamlit快速搭建一个web应用并部署到heroku服务器上
[2]: https://github.com/
[3]: 删除github中已有的仓库和文章

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/965391.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号