返回顶部
首页 > 资讯 > 后端开发 > Python >怎么使用Python实现办公自动化
  • 577
分享到

怎么使用Python实现办公自动化

2023-06-16 13:06:17 577人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

本篇内容主要讲解“怎么使用python实现办公自动化”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Python实现办公自动化”吧!大概是有这样一份Word一共有近2600条类似格式的表格

本篇内容主要讲解“怎么使用python实现办公自动化”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Python实现办公自动化”吧!

大概是有这样一份Word

怎么使用Python实现办公自动化

一共有近2600条类似格式的表格细栏,每个栏目包括的信息有:

  • 日期

  • 发文单位

  • 文号

  • 标题

  • 签收栏

需要提取其中加粗的这三项内容到excel表格中存储,表格样式如下:

怎么使用Python实现办公自动化

也就是需要将收文时间、文件标题、文号填到指定位置,同时需要将时间修改为标准格式,如果是完全手动复制和修改时间,依照一个条目10s的时间计算,一分钟可以完成6条,那么最快也需要:

怎么使用Python实现办公自动化

而这类格式规整的文件整理非常适合用Python来执行,好的那么接下来请Python出场,必要的信息我在代码中以注释信息呈现。

首先使用Python将Word文件导入

# 导入需要的库docx from docx import Document  # 指定文件存放的路径 path = r'C:\Users\word.docx'   # 读取文件 document = Document(path)  # 读取word中的所有表格 tables = document.tables

再把问题逐个划分,首先尝试获取第一张表第一个文件条目的三个所需信息

# 获取第一张表 table0 = tables[0]

仔细观察可以发现一个文件条目占据了3行,所以对表格全部行循环迭代时可以设步长为3

怎么使用Python实现办公自动化

注意观察表格,按照row和cell把所需内容解析清楚

# 在全局放一个变量用来计数填序号 n = 0 for i in range(0, len(table0.rows) + 1, 3):     # 日期     date = table0.cell(i, 1).text     # 标题     title = table0.cell(i + 1, 1).text.strip()     # 文号     dfn = tables[j].cell(i, 3).text.strip()     print(n, date, tite, dfn)

接下来需要解决的是,时间我们获取的是 2/1 这种 日/月的形式。我们需要转化成  YYYY-MM-DD格式,而这利用到datetime包的strptime和strftime函数:

  • strptime: 解析字符串中蕴含的时间

  • strftime: 转化成所需的时间格式

import datetime  n = 0 for i in range(0, len(table0.rows) + 1, 3):     # 日期     date = table0.cell(i, 1).text     # 有的条目时间是空的,这里不做过多判别     if '/' in date:         date = datetime.datetime.strptime(date, '%d/%m').strftime('2020-%m-%d')     else:         date = '-'     # 标题     title = table0.cell(i + 1, 1).text.strip()     # 文号     dfn = tables[j].cell(i, 3).text.strip()     print(n, date, tite, dfn)

这样一张表的内容解析就完成了,注意这里用的是table[0]即第一张表,遍历所有的表加一个嵌套循环就可以,另外也可以捕获异常增加程序灵活性

n = 0 for j in range(len(tables)):     for i in range(0, len(tables[j].rows)+1, 3):         try:             # 日期             date = tables[j].cell(i, 1).text             if '/' in date:                 date = datetime.datetime.strptime(date, '%d/%m').strftime('2020-%m-%d')             else:                 date = '-'             # 标题             title = tables[j].cell(i + 1, 1).text.strip()             # 文号             dfn = tables[j].cell(i, 3).text.strip()             n += 1             print(n, date, title, dfn)         except Exception as error:             # 捕获异常,也可以用log写到日志里方便查看和管理             print(error)             continue

信息解析和获取完成就可以导出了,用到的包是openpyxl

from openpyxl import Workbook  # 实例化 wb = Workbook() # 获取当前sheet sheet = wb.active # 设立表头 header = ['序号', '收文时间', '办文编号', '文件标题', '文号', '备注'] sheet.append(header)

在最内层解析循环的末尾加上如下代码即可

row = [n, date, ' ', title, dfn, ' '] sheet.append(row)

线程的最后记得保存

wb.save(r'C:\Users\20200420.xlsx')

运行时间在10分钟左右,大概离开了一会程序就执行结束了

最后附上完整代码,代码很简单,理清思路最重要

from docx import Document import datetime from openpyxl import Workbook  wb = Workbook() sheet = wb.active header = ['序号', '收文时间', '办文编号', '文件标题', '文号', '备注'] sheet.append(header)   path = r'C:\Users\word.docx' document = Document(path) tables = document.tables  n = 0 for j in range(len(tables)):     for i in range(0, len(tables[j].rows)+1, 3):         try:             # 日期             date = tables[j].cell(i, 1).text             if '/' in date:                 date = datetime.datetime.strptime(date, '%d/%m').strftime('2020-%m-%d')             else:                 date = '-'             # 标题             title = tables[j].cell(i + 1, 1).text.strip()             # 文号             dfn = tables[j].cell(i, 3).text.strip()             n += 1             print(n, date, title, dfn)             row = [n, date, ' ', title, dfn, ' ']             sheet.append(row)         except Exception as error:             # 捕获异常,也可以用log写到日志里方便查看和管理             print(error)             continue  wb.save(r'C:\Users\20200420.xlsx')

到此,相信大家对“怎么使用Python实现办公自动化”有了更深的了解,不妨来实际操作一番吧!这里是编程网网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

--结束END--

本文标题: 怎么使用Python实现办公自动化

本文链接: https://lsjlt.com/news/283711.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • 使用Python怎么实现自动化办公
    这篇文章给大家介绍使用Python怎么实现自动化办公,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Python的优点有哪些1、简单易用,与C/C++、Java、C# 等传统语言相比,Python对代码格式的要求没有那么...
    99+
    2023-06-14
  • 怎么使用Python实现办公自动化
    本篇内容主要讲解“怎么使用Python实现办公自动化”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“怎么使用Python实现办公自动化”吧!大概是有这样一份Word一共有近2600条类似格式的表格...
    99+
    2023-06-16
  • Python办公自动化Excel怎么实现
    这篇文章主要介绍“Python办公自动化Excel怎么实现”,在日常操作中,相信很多人在Python办公自动化Excel怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python办公自动化Excel怎...
    99+
    2023-06-22
  • Python如何实现自动化办公
    这篇文章主要介绍了Python如何实现自动化办公,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。背景想象一下,现在你有一份Word邀请函模板,然后你有一份客户列表,上面有客户的...
    99+
    2023-06-22
  • 教你怎么用Python处理excel实现自动化办公
    目录一、介绍二、步骤三、完整代码一、介绍 实现的是把某个文件夹下的所有文件名提取出来,放入一个列表,在与excel中的某列进行对比,如果一致的话,对另一列进行操作,比如我们在统计人员...
    99+
    2024-04-02
  • Python 自动化处理Excel和Word实现自动办公
    今天我来分享一些Python办公自动化的方法,欢迎收藏学习,喜欢点赞支持,欢迎畅聊。 Openpyxl Openpyxl 可以说是 Python 中最通用的工具模块了,它使与 Exc...
    99+
    2024-04-02
  • 如何实现Python办公自动化之Excel
    本篇内容介绍了“如何实现Python办公自动化之Excel”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!准备使用 Python 操作 Exc...
    99+
    2023-06-16
  • python怎么实现自动化办公邮件合并功能
    本篇内容主要讲解“python怎么实现自动化办公邮件合并功能”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“python怎么实现自动化办公邮件合并功能”吧!经常使用word办公的小伙伴们经常会遇到...
    99+
    2023-06-20
  • Python自动化办公之手机号提取怎么实现
    这篇文章主要介绍“Python自动化办公之手机号提取怎么实现”,在日常操作中,相信很多人在Python自动化办公之手机号提取怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Python自动化办公之手机号...
    99+
    2023-07-02
  • Python自动化办公之Word转PDF的实现
    目录pdf 工具包 - pdfkithtml 转 pdf网址 转 pdf字符串生成pdf结合 pydocx 将 word 转 html 再转 pdf该章节我们将要学习如何将 word...
    99+
    2024-04-02
  • Python自动化办公之PPT段落的使用
    目录PPT 段落的使用获取段落段落添加内容段落中定义多个段落自定义段落上一章节我们学习了基础的定义 PPT 的方法以及每一页中的样式,这节课我们将真正的在 PPT 中添加内容,学习一...
    99+
    2024-04-02
  • python实现自动化办公邮件合并功能
    经常使用word办公的小伙伴们经常会遇到邮件合并的任务,通常会将数量有限的表格中的信息通过word的邮件合并功能,自动生成word文档,操作熟练的技术员通常不到十分钟就可以合并几十份邮件。那么如果遇到成千上万份的邮件...
    99+
    2022-06-02
    python邮件合并 python 自动化办公
  • Python自动化办公之图片转PDF的实现
    安装的方式很常规,直接使用pip安装就行了。 pip install fpdf 将需要使用的三方模块导入进来 from fpdf import FPDF # PDF文档对象操作库...
    99+
    2024-04-02
  • 基于python实现自动化办公学习笔记
    1、CSV (1)写csv文件 import csv def writecsv(path,data): with open(path, "w") as f: writer = csv.writer(f)...
    99+
    2023-01-31
    学习笔记 python
  • Python办公自动化之Excel(中)
    目录准备读取数据写入数据修改数据进阶用法最后准备 首先,我们需要安装依赖包 # 安装依赖包 pip3 install openpyxl 读取数据 使用 openpyxl 中的&...
    99+
    2022-06-02
    python 办公自动化 python 自动化excel
  • Python办公自动化SFTP详解
    目录前言一、sftp和ftp的区别是什么?二、使用步骤1.程序结构2.配置文件3.读入配置文件4.sftp_client.py5.email_client.py6.main.py总结...
    99+
    2024-04-02
  • 使用python自动办公的实例代码
    包: 用来组织文件 包就是这样的,用来组织文件。 主要就是,用 from 包 .模块名字 或者 from 包 import 模块这样导入方式是我们需要注意的,包里面要有Init....
    99+
    2024-04-02
  • Python自动化办公之PPT段落如何使用
    本文小编为大家详细介绍“Python自动化办公之PPT段落如何使用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python自动化办公之PPT段落如何使用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。PPT 段...
    99+
    2023-06-30
  • Python自动化办公之读取Excel数据的实现
    目录前言Excel 读取 - xlrd常用函数介绍获取 excel 对象获取工作簿读取工作簿内容前言 之前的章节我们学习了 python 关于 word 文件相关操作的知识点,从今天...
    99+
    2024-04-02
  • Python办公自动化之Excel介绍
    目录前言一、创建、打开excel文件二、工作表中的数据操作写数据读数据删除数据三、csv文件转xlsx前言 Python处理Excel的包是openpyxl,其支持操作的文件类型为:...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作