flask定制Excel命令

定制excel命令并插入到数据库中

import osfrom flask import Flask
from flask.cli import AppGroup
import click
import pymysql
from openpyxl import load_workbookapp = Flask(__name__)@app.cli.group()
def excel():"""Excel related commands."""pass@excel.command("import")
@click.argument("excel_path", type=click.Path(exists=True))
def create_user(excel_path):"""Import data from Excel to the 'user' table."""try:# 数据库连接配置db_config = {"host": "127.0.0.1","user": "root","password": "123456","db": "flask_base","port": 3307,}# 连接数据库with pymysql.connect(**db_config) as connection:with connection.cursor() as cursor:# 加载Excel文件if not os.path.isfile(excel_path) or not excel_path.endswith(('.xlsx', '.xls')):click.echo("Invalid Excel file path or format.")returnwb = load_workbook(excel_path)sheet = wb.active# 假设Excel的第一行为表头,从第一行开始为数据for row in sheet.iter_rows(min_row=1, values_only=True):name, email, ctime = row  # 根据实际Excel结构调整sql = "INSERT INTO user (name, email, ctime) VALUES (%s, %s, %s)"cursor.execute(sql, (name, email, ctime))# 提交事务connection.commit()click.echo("Data imported successfully.")except Exception as e:click.echo(f"An error occurred: {e}")if __name__ == "__main__":app.run()
#执行  flask --app app.py excel import .\user.xlsx    

image-20240614172402432

image-20240614172502135

django中自定制命令

# 1 app下新建文件夹management和commands
# 2 在该文件夹下新建py文件,随便命名(命令名)# 3 在py文件中写代码
from django.core.management.base import BaseCommand
class Command(BaseCommand):help = '命令提示'def add_arguments(self, parser):parser.add_argument('path', nargs='*', type=str,)def handle(self, *args, **kwargs):print('开始导入')print(args)print(kwargs)
# 4 使用命令
python manage.py  py文件(命令名)
image-20240614200208119

缓存到redis里面

from flask import Flask
from flask_caching import Cache,SimpleCacheconfig = {"CACHE_REDIS_URL": "redis://localhost:6379/0",  # Redis服务器的URL和数据库号,默认端口6379,数据库0"DEBUG": True,  # some Flask specific configs"CACHE_TYPE": "redis",  # Flask-Caching related configs ,可以缓存到redis"CACHE_DEFAULT_TIMEOUT": 300
}
# 初始化Flask应用
app = Flask(__name__)
app.config.from_mapping(config)# 初始化缓存
cache = Cache(app)@app.route('/')
def index():cache.set('name', 'hope')return 'index'#取值
@app.route('/get')
def get():res=cache.get('name')return resif __name__ == '__main__':app.run()
image-20240614184807330 image-20240614184735767

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/732323.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

flask的简单使用

1 flask介绍 #1 python 界的web框架-Django:大而全,你要的东西都有 [orm,缓存,认证]django-ninja-flask:小而精,所有web开发需要的东西,借助于第三方集成-web.py-----同步框架--进程线程架构--3.x以后支持异步--tornado sanicfastapi:高性能小而精,借助于第三方:orm…

模拟集成电路设计系列博客——7.5.5 折叠型ADC

7.5.5 折叠型ADC 我们刚了解完输入放大器的数量如何通过插值型架构来减少。但是对于一个N bit的ADC来说,仍然需要\(2^N\)个锁存比较器。这个大量的比较器数量可以通过折叠型ADC架构来减少。折叠型ADC架构类似于两步型ADC,一组LSB分离于一组MSB进行独立的查找。但是,相比两步…

240627构造

20240627构造专题 写在前面:出场即巅峰(明日模拟赛RP++) 一.何为构造 就是通过对一道题题面的分析可以发现某种规律(类似于不完全归纳法),然后发掘本质,就可以很快的解题,但是显然我还没有掌握 二.一些技巧 1.寻找特殊性质,从而求解 2.估算上界(也就是对最优情况进行…

别人工作8小时,我只需1小时!这些宝藏网站我都替你收集好了!

mac免费应用,效率工具,编程工具,设计网站,图片网站,通通一网打尽软件mac应用下载 很多破解版应该都可以找到snipaste: 截图工具,快捷截图,贴图等功能。幕布: 快速编辑思维导图。sublime text: 文档编辑器(打开速度贼快)。visual studio code: 新一代编辑器(插件非常…

VLC工具使用指南

一、引言 VLC(VideoLAN Client)是一款功能强大的免费开源跨平台多媒体播放器和框架,能够播放大多数多媒体文件以及DVD、音频CD、VCD和各种流媒体协议。无论是本地视频文件还是网络视频流,VLC都能轻松应对。本文将详细介绍VLC工具的基本用法和高级功能。 二、安装与设置 下载…

递归示例-指定数字以内的所有排列组合(Reduce)

指定数字以内的所有排列组合: 定义名称版:=pmtt(指定数字)pmtt=LAMBDA(x,IF(x=1,1,VSTACK(pmtt(x-1),REDUCE(SEQUENCE(x),SEQUENCE(,x-1)^0*x,LAMBDA(a,b,TOCOL(a&SEQUENCE(,b)))))))不定义名称版:=LET(fx,LAMBDA(npmtt,x,IF(x=1,1,VSTACK(npmtt(npmtt,x-1),REDUCE(SEQU…

nodejs解压zip/rar文件到本地,并获取到解压进度

方案:解压到本地的大小 / zip文件总大小(解压后的) ,得出解压进度 先得出解压后的文件大小,然后解压到本地const AdmZip = require("adm-zip"); const JSZip = require(jszip);// 指定ZIP文件的路径 const admZip = new AdmZip("D:\\Users\\whr4220\\Downloa…

畅联云看视频卡顿、画质不清原因可能是一些参数没有配置对

在畅联云平台观看视频时,很多用户可能会遇到卡顿和画质不清晰的问题。这些问题往往由多种因素共同导致,包括网络带宽与传输质量、视频编码与压缩、服务器性能与负载均衡,以及视频源质量等。本文我们将重点说一下摄像机上面的一些可能影响视频卡顿和画质的参数。 打开摄像机w…

R语言独立成分分析fastICA、谱聚类、支持向量回归SVR模型预测商店销量时间序列可视化|附代码数据

全文链接:http://tecdat.cn/?p=31948 原文出处:拓端数据部落公众号 本文利用R语言的独立成分分析(ICA)、谱聚类(CS)和支持向量回归 SVR 模型帮助客户对商店销量进行预测。 首先,分别对商店销量的历史数据进行了独立成分分析,得到了多个独立成分;其次,利用谱聚类方法…

Profibus协议转Modbus协议网关模块在船舶中的应用

本文主要介绍了Profibus协议转Modbus协议网关模块(XD-MDPB100)在船舶中的应用。 Profibus转Modbus网关能实现Profibus总线和Modbus协议之间的数据转换与对接,为船舶系统之间的信息交换提供便利。一、背景 在当今数字化快速发展的时代,船舶作为重要的交通工具之一,也在不断…

sessionStorage 能在多个标签页之间共享数据吗?

🧑‍💻 写在开头 点赞 + 收藏 === 学会🤣🤣🤣 最近,我的一个朋友在面试中被一个关于 sessionStorage 的问题难住了。我们来聊聊这个话题。sessionStorage 能在多个标签页之间共享数据吗?在回答这个问题之前我们先来聊聊另一个存储API localstorage localstorage与s…

2024-06-27 java spring boot项目用maven打包报错:xxx-0.0.1-SNAPSHOT.jar中没有主清单属性

问题如下: 原因:打包文件pom.xml配置问题<skip>true</skip>不能为true!为true时,此处引用网友的解释: 在spring-boot-maven-plugin的配置中设置 <skip>true</skip> 时,实际上你告诉Maven在执行构建生命周期时跳过这个插件的运行。此插件负责将你的…

如何设计一个好的测试用例

如何理解一个“好的”测试用例? “好的”测试用例一定是一个完备的集合,它能够覆盖所有等价类以及各种边界值,而跟能够发现缺陷无关。 举例子: 被测软件 --- 鱼塘 软件缺陷 --- 鱼 测试用例集 --- 渔网 “好的”测试用例集就是一张能够覆盖整个鱼塘的大鱼网,只要鱼塘里有鱼…

聚类模型的算法性能评价

一、概述作为机器学习领域的重要内容之一,聚类模型在许多方面能够发挥举足轻重的作用。所谓聚类,就是通过一定的技术方法将一堆数据样本依照其特性划分为不同的簇类,使得同一个簇内的样本有着更相近的属性。依不同的实现策略,聚类算法有很多种,如基于距离的k-means、基于密…

常见的域名劫持现象

在当今数字化的时代,互联网已经成为人们生活和工作中不可或缺的一部分。然而,随着网络的普及和发展,一些安全问题也逐渐浮现,域名劫持就是其中之一。域名劫持不仅会给用户带来不便,还可能导致严重的安全隐患。下面让我们来了解一些常见的域名劫持现象。 1、一种常见的域名…

SymPy-1-13-中文文档-十一-

SymPy 1.13 中文文档(十一)原文:docs.sympy.org/latest/index.html离散原文链接:docs.sympy.org/latest/modules/discrete.html在 SymPy 的discrete模块中实现了计算有限序列的离散变换和卷积的方法。 该模块包含对离散序列操作的函数。 Transforms - fft, ifft, ntt, intt…

SymPy-1-13-中文文档-十五-

SymPy 1.13 中文文档(十五)原文:docs.sympy.org/latest/index.html物理原文:docs.sympy.org/latest/reference/public/physics/index.html一个帮助解决物理问题的模块。 目录氢波函数矩阵泡利代数一维量子谐振子三维量子谐振子二次量子化Wigner 符号单位系统单位系统背后的…

SymPy-1-13-中文文档-七-

SymPy 1.13 中文文档(七)原文:docs.sympy.org/latest/index.html积分原文:docs.sympy.org/latest/modules/integrals/index.html本模块文档包含有关梅耶尔 G 函数和 SymPy 积分的详细信息。 内容使用梅耶尔 G 函数计算积分积分使用 Meijer G 函数计算积分docs.sympy.org/la…

克服指标管理痛点,实现数据价值最大化

在当下的企业管理中,由于数据量的激增,管理方式逐渐从基于经验转向基于数据。在此过程中,我们能够通过数据探查业务情况、分析数据,从而获取更优的决策支持数据。这通常通过数据报表或分析平台来实现,对于临时性场景,则会基于日常取数方式进行临时数据分析。 但在此过程中…