pycharm实现上传excel生成word

下载需要的依赖包

pip install openpyxl python-docx flask

main.py文件

from flask import Flask, request, render_template
from openpyxl import load_workbook
from docx import Documentapp = Flask(__name__, template_folder='templates')@app.route('/')
def index():return render_template('index.html')@app.route('/upload', methods=['POST'])
def upload():if 'file' not in request.files:return "No file part"file = request.files['file']if file.filename == '':return "No selected file"if file:excel_data = read_excel(file)generate_word(excel_data)return "Word file generated successfully"def read_excel(file):workbook = load_workbook(file)sheet = workbook.activeexcel_data = [list(row) for row in sheet.iter_rows(values_only=True)]return excel_datadef generate_word(excel_data):document = Document()table = document.add_table(rows=1, cols=len(excel_data[0]))for i, header in enumerate(excel_data[0]):table.cell(0, i).text = str(header)for row_data in excel_data[1:]:row_cells = table.add_row().cellsfor i, cell_value in enumerate(row_data):row_cells[i].text = str(cell_value)document.save('output.docx')if __name__ == '__main__':app.run(debug=True)

template文件夹下index.html文件

<!-- index.html -->
<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Excel to Word</title>
</head>
<body><form method="POST" enctype="multipart/form-data" action="/upload"><input type="file" name="file" accept=".xlsx, .xls"><button type="submit">Generate Word</button></form>
</body>
</html>

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

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

相关文章

小程序面试题:js、vue、uni、小程序的页面传参方式区别

js、vue、uni、小程序的页面传参方式区别&#xff1f; 1、 js传参 通过location.href跳转传参和接收参数&#xff0c;url后面拼接参数来进行跳转传参。 2、 vue传参 可以通过标签router-link的to属性跳转传参&#xff0c;也可以通过事件里的this.$router.push跳转传参。传参有…

寒假作业Day 03

寒假作业Day 03 一、选择题 在C语言中&#xff0c;字符型指针char *p;通常用于指向字符数组&#xff08;即字符串&#xff09;的首字符。对于给定的选项&#xff0c;我们来分析每一个选项是否可以将字符串正确地赋值给p&#xff1a; A: pgetchar(); getchar()函数从标准输入读…

K8S—Pod控制器

目录 1.什么是POD控制器 2.POD控制器有几种类型 3.POD与控制器之间的关系 4.示例 4.1 Deployment 4.2 SatefulSet ①为什么要有headless&#xff1f; ②为什么要有volumeClainTemplate&#xff1f; ③服务发现&#xff1a;就是应用服务之间相互定位的过程。 ④K8S里服…

图的简单介绍

定义及术语 G(V,E)&#xff1a;图G的顶点集为V&#xff0c;边集为E。分为有向图和无向图两类。 顶点的度&#xff1a;与该结点相连的边的条数。 出度&#xff1a;顶点的出边条数 入度&#xff1a;顶点的入边条数 顶点的权值称为点权&#xff0c;边的权值称为边权。 存储 1.邻…

SpringCache【缓存接口返回值信息】【前端访问后端,后端访问数据库(可以缓存这个过程,前端访问后端,保存记录,下次访问直接返回之前的数据)】

SpringCache 针对不同的缓存技术需要实现不同的CacheManager&#xff1a;注解入门程序CachePut注解CacheEvict注解Cacheable注解 Spring Cache是一个框架&#xff0c;实现了基于注解的缓存功能&#xff0c;只需要简单地加一个注解&#xff0c;就能实现缓存功能&#xff0c;大大…

Mongodb基础(node.js版)

一、Mongodb 介绍 Mongodb 是一个文档数据库&#xff0c;以文档形式存储数据&#xff0c;格式类似于 JSON 与 Mysql 的特点及选型对照 MongodbMysql关系类型非关系型关系型存储类型文档存储&#xff08;类似于写 Word &#xff09;表格存储 &#xff08;类似于写 Excle&…

Java玩转《啊哈算法》之模拟链表

人应该支配习惯&#xff0c;而绝不是让习惯支配人。一个人要是不能改掉坏习惯&#xff0c;那么他就一文不值。 目录 缘代码地址模拟链表创建遍历打印插入插入优化 完整代码 缘 各位小伙伴们好呀&#xff01;本人最近看了下《啊哈算法》&#xff0c;写的确实不错。 但稍显遗憾…

【C++】string 类 ( 上)

标准库中的string类 注意&#xff1a; 1. string是表示字符串的字符串类 2. 该类的接口与常规容器的接口基本相同&#xff0c;再添加了一些专门用来操作string的常规操作。 比特就业课 3. string在底层实际是&#xff1a;basic_string模板类的别名&#xff0c;typedef basi…

python爬虫之selenium知识点记录

selenium 一、前期准备 1、概述 selenium本身是一个自动化测试工具。它可以让python代码调用浏览器。并获取到浏览器中加载的各种资源。 我们可以利用selenium提供的各项功能。 帮助我们完成数据的抓取。 2、学习目标 掌握 selenium发送请求&#xff0c;加载网页的方法 掌…

Stable-Diffusion ubuntu服务器部署,报错解决方法(小白教程)

Stable Diffusion是一个深度学习模型&#xff0c;专注于生成高质量的图像。它由CompVis团队与Stability AI合作开发&#xff0c;并在2022年公开发布。这个模型使用文本提示&#xff08;text prompts&#xff09;生成详细、逼真的图像&#xff0c;是目前人工智能图像生成领域的一…

逆向案例四:360k静态和精灵数据动态AES解密,用js的方法

一、360K 网页链接:https://www.36kr.com/p/2672600261670407 页面中有静态的需要解密的内容&#xff0c;确定html包&#xff0c;确定方法 1.1方法步骤 在下方的搜索中输入decrypt(或者关键字window.initialState &#xff0c;进入js文件 在AES.decrypt处打上断点&#xff0…

机器学习-03-机器学习算法流程

总结 本系列是机器学习课程的第02篇&#xff0c;主要介绍机器学习中专家系统的应用介绍 本门课程的目标 完成一个特定行业的算法应用全过程&#xff1a; 定义问题&#xff08;Problem Definition&#xff09; -> 数据收集(Data Collection) -> 数据分割(Dataset Spit…

[LeetBook]【学习日记】类链表反转——寻找倒数第cnt个元素

来源于「Krahets」的《图解算法数据结构》 https://leetcode.cn/leetbook/detail/illustration-of-algorithm/ 题目描述 训练计划 II 给定一个头节点为 head 的链表用于记录一系列核心肌群训练项目编号&#xff0c;请查找并返回倒数第 cnt 个训练项目编号。 示例 1&#xff1…

守护无价数据:文件备份的重要性与实用策略

一、数据安全&#xff1a;为何文件备份至关重要 在数字化时代&#xff0c;我们的生活和工作越来越离不开电子设备与其中的文件数据。这些文件可能包含重要的工作文档、珍贵的家庭照片、个人的创意作品等&#xff0c;它们是我们回忆的载体&#xff0c;也是我们工作和创新的基石…

PDF Expert for Mac v3.9.2中文激活版下载

PDF Expert for Mac是一款易于使用的 PDF 编辑器和注释器&#xff0c;专为 Mac 设备设计。它允许用户轻松查看、编辑、签名、注释和共享 PDF。该软件使用户能够向他们的 PDF 添加文本、图像、链接和形状&#xff0c;突出显示和标记文本&#xff0c;填写表格以及签署数字文档。它…

金融行业专题|期货超融合架构转型与场景探索合集(2023版)

更新内容&#xff1a; 更新 SmartX 超融合在期货行业的覆盖范围、部署规模与应用场景。新增 CTP 主席系统实践与评测、容器云资源池等场景实践。更多超融合金融核心生产业务场景实践&#xff0c;欢迎下载阅读电子书《SmartX 金融核心生产业务场景探索文章合集》。 面对不断变…

Golang中的四个括号

代码如下&#xff0c;首先第一个括号内容为wk *worker表示这个函数是一个方法&#xff0c;属于结构体worker的方法&#xff0c;第二个括号内容为say string&#xff0c;是方法的参数&#xff0c;第三个括号内容err error是方法的返回值&#xff0c;第四个括号是work方法内部的匿…

mac iNode 断开后没网 经测试 后台还在运行

界面断开&#xff0c;但是连不上网&#xff1a;实际上可能是服务在后台还在运行 解决方式&#xff1a;终端执行命令 &#xff0c;手动停止iNode服务 sudo /Library/StartupItems/iNodeAuthService/iNodeAuthService stop 停掉之后&#xff0c;有可能连不上网&#xff0c;断开wi…

基于springboot+vue的美食推荐商城

博主主页&#xff1a;猫头鹰源码 博主简介&#xff1a;Java领域优质创作者、CSDN博客专家、阿里云专家博主、公司架构师、全网粉丝5万、专注Java技术领域和毕业设计项目实战&#xff0c;欢迎高校老师\讲师\同行交流合作 ​主要内容&#xff1a;毕业设计(Javaweb项目|小程序|Pyt…

网工必懂的ICMP协议

福建厦门微思网络始于2002年&#xff0c;面向全国招生&#xff01; 主要课程&#xff1a;华为、思科、红帽、Oracle、VMware、CISP安全系列、PMP....... 网络工程师实用课程华为HCIA课程介绍 网络工程师使用课程华为HCIP课程介绍 网络工程师使用课程华为HCIE课程介绍 因特网…