用Flask快速生成报表
一、前言
《用Python快速生成报表之一》 我们介绍了用html-table快速生成表格数据报表,今天我们再介绍一下用Python Flask 快速开发报表,使用的是最古老的套页面方式。
二、Flask快速生成报表
Python有N多Web框架,最强大最出名的是Django,而Flask是一个微型的Web框架,它有一个强健的基础核心,其它功能都通过扩展来实现。
1、创建虚拟环境
虚拟环境是Python解释器一个副本,在这个环境中安装私有包不会影响全局环境。
python3 -m venv venv
激活虚拟环境 source venv/bin/activate
安装 flask pip install Flask
安装 pymysql pip install pymsql
2、搭建基础的web框架
report.py

/templates/report.html
(略)
3、使用pymysql 查询数据,然后跳转到页面

注:创建连接然后使用游标查询数据,Pymysql使用可以参考《用Python订正数据》,Pyton也有很多ORM框架,比如SQLAlchemy,Flask有对应的扩展Flask-SQLAlchemy,简化了Flask应用中使用SQLAlchemy框架。
4、模板页面代码
/templates/report.html

注:使用Jinjia2模板引擎渲染页面,循环用{% for %}{% endfor %},变量取值{{}}.
5、报表页面
启动应用,打开报表页面如下http://127.0.0.1:5000/report

注:用这种方式临时给老板提供一个报表还是比较方便,不用投入前后端技术资源,不用等待发布日,直接在生产环境机器写几行代码就可以跑起来了。
相关文章:
用Flask快速生成报表
一、前言 《用Python快速生成报表之一》 我们介绍了用html-table快速生成表格数据报表,今天我们再介绍一下用Python Flask 快速开发报表,使用的是最古老的套页面方式。 二、Flask快速生成报表 Python有N多Web框架,最强大最出名的是Django&…...
关于时序预测可解释性预测
本文做一些论文收集使用,先更新一两篇 论文 1 Learning Structured Components: Towards Modular and Interpretable Multivariate Time Series Forecasting 论文地址: https://browse.arxiv.org/pdf/2305.13036.pdf 论文代码:https://gi…...
泊车功能专题介绍 ———— AVP系统技术要求之场地规范定位要求
文章目录 停车场场地规范场地分级规范场地标识规范位置标识跨层标识十字路口标识丁字路口处标识闸口/收费口标识上下车点标识 定位功能要求环境要求定位精度要求场端定位要求道路自动驾驶定位要求泊车入位定位要求 车端定位要求道路自动驾驶定位要求泊车入位定位要求初始定位要…...
【STM32】时钟设置函数(寄存器版)
一、STM32时钟设置函数移植 1.时钟模块回顾 一个疑问 前面代码并没有设置时钟为什么可以直接使用。 2.时钟树 3.时钟树分析 1.内部晶振(HSI) 内部晶振不稳定,当我们上电后,会自动产生振动,自动产生时钟,…...
【DDD】贫血模型和充血模型
基于业务开发的项目大多是MVC架构的。成为Web项目的标准开发模式,但它却是违反面向对象编程风格的,是面向过程的。之后基于领域驱动设计开发模式被人提倡。 DDD(Domain-driven design)领域驱动设计是一种通过将实现连接到持续进化…...
【JS学习】字符串的substring方法
1. 介绍 substring 是JavaScript字符串对象的一个方法,用于从一个字符串中提取子字符串,并返回提取的部分。 可以使用 substring 方法来截取字符串的一部分,指定起始索引和结束索引(或只指定起始索引)。 这个方法不…...
vue部署,chunk文件有部分404,解决方案
排查方案: 1,检查项目配置,再vue.config.js里面配置 publicPath: "./",2,打包后检查报错文件是否存在打包目录 3,如果1,2都有 找到部署后404的文件,查看是否为空文件 style里面全注释也会打包文…...
《红蓝攻防对抗实战》六.常规反弹之利用NC在windows系统执行反弹shell
目录 一.利用NC工具在windows系统执行反弹shell 1. Windows正向连接shell 2.Windows反向连接shell 前文推荐: 《红蓝攻防对抗实战》一. 隧道穿透技术详解《红蓝攻防对抗实战》二.内网探测协议出网之TCP/UDP协议探测出网《红蓝攻防对抗实战》三.内网探测协议出网…...
python如何创建自己的对冲交易算法
在这篇文章中,我解释了如何创建一个人工智能来每天为我进行自动交易。 随着机器学习的现代进步和在线数据的轻松访问,参与量化交易变得前所未有的容易。为了让事情变得更好,AWS 等云工具可以轻松地将交易想法转化为真正的、功能齐全的交易机器…...
Ubuntu22.04安装,SSH无法连接
Ubuntu初始化安装后,系统默认不允许root通过ssh连接,因此需要完成三个设置 1.修改ssh配置文件 vim /etc/ssh/sshd_config 将PermitRootLogin注释打开,并将值改为yes 保存修改并退出 :wq 2.重启ssh服务 sudo service ssh restart 3.重新打…...
解决dirsearch扫描工具pkg_resources模块警告问题
一、pkg_resources模块问题 ┌──(kali㉿kali)-[~/桌面/XXX/dirsearch-master] └─$ python dirsearch.py -h /home/kali/XX/XXXX/dirsearch-master/dirsearch.py:23: DeprecationWarning: pkg_resources is deprecated as an API. See https://setuptools.pypa.io…...
JAVA-编程基础-11-04-java IO 字符流
Lison <dreamlison163.com>, v1.0.0, 2023.05.07 JAVA-编程基础-11-04-java IO 字符流 文章目录 JAVA-编程基础-11-04-java IO 字符流字符流Reader 和 Writer字符输入流(Reader)**FileReader构造方法****FileReader读取字符数据** 字符输出流&am…...
亚马逊云代码AI助手CodeWhisperer使用教程
一、CodeWhisperer 简介 1、CodeWhisperer是一款基于机器学习的通用代码生成器,由Amazon出品,可以给我们提供代码建议。 2、CodeWhisperer 基于各种上下文线索提供建议,包括光标在源代码中的位置、位于光标前面的代码、注释,以及…...
2023全新小程序广告流量主奖励发放系统源码 流量变现系统
2023全新小程序广告流量主奖励发放系统源码 流量变现系统 分享软件,吃瓜视频,或其他资源内容,通过用户付费买会员来变现,用户需要付费,有些人喜欢白嫖,所以会流失一部分用户,所以就写了这个系统…...
最详细STM32,cubeMX外部中断
这篇文章将详细介绍 cubeMX外部中断的配置,实现过程。 文章目录 前言一、外部中断的基础知识。二、cubeMX 配置外部中断三、自动生成的代码解析四、代码实现。总结 前言 实验开发板:STM32F103C8T6。所需软件:keil5 , cubeMX 。实…...
云栖大会?全部免费!!抢先一步看!
2023云栖大会定档10月31日! 点击链接免费预约云栖门票: 2023云栖大会-领票页面 2023 云栖大会将于 10.31-11.2 在杭州云栖小镇举办,深度拥抱大数据AI 核心技术,见证阿里云大数据AI产品年度重磅发布及创新。开放融合的科技展示平…...
Linux常用的调试工具
在开发和调试Linux的过程中,经常会遇到各种各样的问题,如程序崩溃、性能低下、内存泄漏等。这时候,调试就显得尤为重要。调试技巧和工具能够帮助开发人员快速定位问题并快速解决。在本文中,我们将介绍一些常用的Linux调试技巧和工…...
PX4-Autopilot下载与编译
文章目录 1 Git clone 代码2 下载子模块3 编译4 可能遇到的问题参考 1 Git clone 代码 Github Repository 链接:PX4-Autopilot 查看现有版本: 在终端用命令下载,-b表示branch git clone -b v1.14.0 https://github.com/PX4/PX4-Autopilot.…...
关于数据可视化那些事
干巴巴的数据没人看,数据可视化才能直观展现数据要点,提升数据分析、数字化运营决策效率。那关于可视化的实现方式、技巧、工具等,你了解几分?接下来,我们就来聊聊数据可视化那些事。 1、什么是数据可视化?…...
【Java小知识点】类加载器的区别
🎄欢迎来到边境矢梦的csdn博文🎄 🎄本文主要梳理Java类加载器的区别🎄 🌈我是边境矢梦,一个正在为秋招和算法竞赛做准备的学生🌈 🎆喜欢的朋友可以关注一下🫰ᾯ…...
相机Camera日志实例分析之二:相机Camx【专业模式开启直方图拍照】单帧流程日志详解
【关注我,后续持续新增专题博文,谢谢!!!】 上一篇我们讲了: 这一篇我们开始讲: 目录 一、场景操作步骤 二、日志基础关键字分级如下 三、场景日志如下: 一、场景操作步骤 操作步…...
UE5 学习系列(三)创建和移动物体
这篇博客是该系列的第三篇,是在之前两篇博客的基础上展开,主要介绍如何在操作界面中创建和拖动物体,这篇博客跟随的视频链接如下: B 站视频:s03-创建和移动物体 如果你不打算开之前的博客并且对UE5 比较熟的话按照以…...
关于iview组件中使用 table , 绑定序号分页后序号从1开始的解决方案
问题描述:iview使用table 中type: "index",分页之后 ,索引还是从1开始,试过绑定后台返回数据的id, 这种方法可行,就是后台返回数据的每个页面id都不完全是按照从1开始的升序,因此百度了下,找到了…...
[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?
论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...
C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
微信小程序云开发平台MySQL的连接方式
注:微信小程序云开发平台指的是腾讯云开发 先给结论:微信小程序云开发平台的MySQL,无法通过获取数据库连接信息的方式进行连接,连接只能通过云开发的SDK连接,具体要参考官方文档: 为什么? 因为…...
laravel8+vue3.0+element-plus搭建方法
创建 laravel8 项目 composer create-project --prefer-dist laravel/laravel laravel8 8.* 安装 laravel/ui composer require laravel/ui 修改 package.json 文件 "devDependencies": {"vue/compiler-sfc": "^3.0.7","axios": …...
基于Java Swing的电子通讯录设计与实现:附系统托盘功能代码详解
JAVASQL电子通讯录带系统托盘 一、系统概述 本电子通讯录系统采用Java Swing开发桌面应用,结合SQLite数据库实现联系人管理功能,并集成系统托盘功能提升用户体验。系统支持联系人的增删改查、分组管理、搜索过滤等功能,同时可以最小化到系统…...
脑机新手指南(七):OpenBCI_GUI:从环境搭建到数据可视化(上)
一、OpenBCI_GUI 项目概述 (一)项目背景与目标 OpenBCI 是一个开源的脑电信号采集硬件平台,其配套的 OpenBCI_GUI 则是专为该硬件设计的图形化界面工具。对于研究人员、开发者和学生而言,首次接触 OpenBCI 设备时,往…...
WPF八大法则:告别模态窗口卡顿
⚙️ 核心问题:阻塞式模态窗口的缺陷 原始代码中ShowDialog()会阻塞UI线程,导致后续逻辑无法执行: var result modalWindow.ShowDialog(); // 线程阻塞 ProcessResult(result); // 必须等待窗口关闭根本问题:…...
