当前位置: 首页 > news >正文

【Python自学笔记】Flask调教方法Internel Server Error

收到老师的小组作业任务说是写一个自动报告程序,用Python+SQLite+HTML实现,好吧。
前面没什么问题,打开VSCode,连数据库+读数据+处理+可视化+模板拼凑,最后调用Flask框架出网页报告的时候总报错连接不了。
在这里插入图片描述
但换了jinjia2的渲染代码,又能看见模板和生成的html文件,目录也没有什么问题。
模板:
html模板文件
生成的html代码:
在这里插入图片描述
我搜了好几个帖子,最后发现是Flask的路径很刁钻的问题:
1.主要Python文件名改为app.py
在这里插入图片描述
2.app.py这个文件要放在顶级目录的下面,他的邻居就是html模板文件,取名template不容易出错,因为这个是Flask的默认路径名字。
在这里插入图片描述
3.静态图片文件目录改名static,放在和app.py同一级,也就是主目录(最外面一层目录)下方。
在这里插入图片描述
第二小步特别要注意,图片路径应该是放图片的那个文件夹+图片名字,而不是“C://blabla"这样的一长串完整目录。
在这里插入图片描述
chatGPT的第三步我没找照做,因为url_for引入了库也一直报错,前两小步足够解决问题了。
在这里插入图片描述
再对比一下之前的文件目录,马上就发现差别有多大了。
在这里插入图片描述
4.所有文件存放路径不要出现任何中文,否则模板渲染的时候会出现黑色菱形问号,比如,不要把图片放在”C://我的图片/Image.png“这样的目录里,要用”C://staitc/Image.png"。

app = Flask(__name__)
@app.route('/')
def show_report():image_static_paths = ["static/" + "001OverviewImage.png","static/" + "002GenderImage.png","static/" + "003OccupationImage.png","static/" + "004SleepDurationQualityImage.png","static/" + "005SleepQualityDisorderImage.png"
]return render_template('report_template.html', result_line=resultLine, image_paths=image_static_paths)#return resultLineif __name__ == '__main__':#数据处理函数调用放前面app.run(host='0.0.0.0')#其他代码

这样就可以顺利打开了Flask渲染的html文件了
如果还有其他问题的话可以看看这些帖子:
《浏览器访问127.0.0.1已拒绝连接》
添加链接描述

《Can’t connect to Flask web service, connection refused》:
https://stackoverflow.com/questions/30554702/cant-connect-to-flask-web-service-connection-refused
添加链接描述

http://www.lryc.cn/news/225147.html

相关文章:

  • 【AICFD案例教程】汽车外气动-AI加速
  • P1547 [USACO05MAR] Out of Hay S 题解
  • 2023.11.10联测总结
  • C++:list?自己模拟实现!
  • layui table合并相同的列
  • 【Spring】SpringBoot配置文件
  • python批量下载txt文件中链接的数据
  • stm32 Bootloader设计(YModem协议)
  • 竞赛 题目: 基于深度学习的疲劳驾驶检测 深度学习
  • ubuntu 16.04.5 安装 vivado 2019.1 完整编译AD9361的环境
  • Zotero详细功能补充!熟练使用!【进阶版,持续更新】
  • 【Windows】Windows系统常用命令大全
  • 大语言模型研究进展综述
  • linux gdb 调试 常见调试命令介绍+总结
  • 基于JavaWeb+SSM+Vue微信小程序校园兼职任务平台系统的设计和实现
  • 我的MQTT操作类(M2Mqtt.Net)
  • node插件MongoDB(四)—— 库mongoose 的个性话读取(字段筛选、数据排序、数据截取)(四)
  • AI:73-结合语法知识的神经机器翻译研究
  • [LeetCode]-225. 用队列实现栈
  • Kafka Rebanlace次数过高问题
  • 计算机是如何进行工作的+进程和线程
  • MySQL(11):数据处理之增删改
  • QT QDockWidget
  • Android 12.0 开启蓝牙状态栏即显示蓝牙图标
  • skynet学习笔记02— skynet介绍、skynet基础API与环境变量
  • Android---App 崩溃
  • DocTemplateTool - 可根据模板生成word或pdf文件的工具
  • Python+reuqests自动化接口测试
  • 【Java 进阶篇】保护你的应用:Java 过滤器实现敏感词汇过滤
  • 目标检测网络系列——YOLO V4