程序员文章、书籍推荐和程序员创业信息与资源分享平台

网站首页 > 技术文章 正文

小python帮大忙——使用python生成word格式的工作日志

hfteth 2025-01-21 17:55:04 技术文章 27 ℃

需求描述

一个朋友的工作内容主要是监督项目进度,每天需要在多个项目现场巡查,从今年开始单位优化管理,要求他把每天的工作内容及现场图片编辑成word文档,以日报的形式进行汇报,日报的格式如下:

这可把朋友愁坏了,日报内容虽然不是很复杂,但是白天工作没办法使用电脑,晚上下班太晚又容易误事,朋友跟我吐槽成天为了写这个耗费了不少精力,想让我帮忙找找有没有什么工具可以帮忙解决这个问题。

解决思路

python的Python-docx库,是用于处理Word文档的Python库,可以帮助自动化创建和修改Word文档。通过的需求的分析,我们可以看到针对这个需求,只需要实现一下两个基本功能:

1、向word文档中的表格中插入文本

2、想word文档中插入图片

安装python-docx

# 使用 pip install 命令,安装 python-docx 库

pip install python-docx


具体实现


如下代码实现了向word文档中的指定表格的指定单元格(指定行的指定列)的指定段落插入文本,并设置文本的字体和大小:

参数说明:

tables:表格对象

r:行

c:列

p:段落

msg:插入的文本内容

font:字体

font_size:字体大小


如下代码实现了往word中插入图片的功能,其中第一个方法实现的是往指定段落后面插入图片,第二个方法实现的是往指定表格的指定位置插入图片:

参数说明:

方法一

paragraph:指定的段落(需要往这个段落后面插入图片)

filepath:图片存储的目录

size:图片的大小

方法二

tables:表格对象

r:行

c:列

g:段落

paragraph:指定的段落(需要往这个段落后面插入图片)

filepath:图片存储的目录

size:图片的大小


可以看到两个方法本质上并没有区别,只是插入图片的位置不一样,导致定位图片位置的参数不一样。


获取日期:

获取本地天气:


以上基本操作即可满足填写日志所需的全部内容,剩下的就是一步一步填写表格和文档指定内容即可,综合的代码可以放到一个方法中,统一调用起来比较方便:


需要写入的文本内容在调用上面这个方法时赋值即可:


结尾

有了这个脚本的帮助,朋友每天只需要编辑一下文本内容,把需要上传的图片放到指定文件夹就可以自动完成当日的日志填写,虽然避免不了写日志这项工作内容,但是少不用每天为了这个分散太多精力,后续如果加上定时自动执行并发送邮件的功能,将会大大提高办公效率。

自动化办公最好的应用场景必然要结合日常工作中的实际情况,把一些重复性高的工作内容把它实现自动化办公,这里的重复性不光指的每天或者固定时间要做,更是指实操内容上的重复,类似如填写固定格式的工作日报这种东西,用python自动化实现是最好不过了。


欢迎朋友们关注我的wx公众号 知了二三w,有问题随时交流沟通~

END

最近发表
标签列表