字处理软件是平时办公必备的同时也是最常用的软件之一,而字处理软件用的最多最频繁的就是微软的word,其扩展名为docx。在日常工作中,可能需要对很多的docx文件进行批处理,例如教师在批阅学生提交的电子版作业时,需要填写日期等信息,假设一个年级有100人,那么100份作业就需要填写100次日期, 这个工作是简单的、重复的,那么是不是可以将这个工作交给计算机去做呢?
Python资源共享群:484031800
要想让计算机完成这项工作,就需要通过编程的方式告诉计算机应该怎么做。我们选择python编程语言来完成这项工作。
第一步:安装第三方操作docx文件的依赖库docx。
python中提供了支持读写docx文件的库为python-docx,首先需要安装这个第三方库,可以通过包管理软件pip来完成。
pip install python-docx
第二步:打开docx文件,假设要打开的文件名为'作业1.docx'。
doc = Document('作业1.docx')
有了docx对象,接下来就可以对文件进行操作了。
第三步:找到需要修改的位置,并完成修改。
通过分析docx文档, 了解到需要处理的内容在表格中。
t0 = doc.tables[0]
该方法可以获得文件的第一个表格。
接下来可以获得表格的第一行。
row0 = t0.rows[0]
接下来可以获得该行的第一个单元格,并打印该单元格的内容。
cell0 = row0.cells[0]
cell0.text
# 输出结果为:学号
该结果与文章开头的文件截图内容一致,从上面可以看到,利用python的docx库,可以非常方便的操作docx文件。
按照最初提出的需求,需要将表格中的日期修改为今天,可以看到该单元格位于第一个表格的第二行的第二个单元格。
doc.tables[0].rows[1].cells[1].text = '2019-07-19'
第四步:保存文件。
doc.save('作业1-new.docx')
最后一步:批处理所有文件。
要想批处理所有文件,只需要遍历指定文件夹中的所有文件,然后通过上面的方式对每一个文件进行处理即可完成任务。
import pathlib
from docx import Document
for item in pathlib.Path('/作业目录').iterdir():
# item.name 即为文件名
doc = Document(item.name)
doc.tables[0].rows[1].cells[1].text = '2019-07-19'
doc.save(item.name)
本文介绍了利用python批处理docx文件的方法,这个方法是非常实用、有效的,能够极大的提高工作效率,充分践行把简单的、重复的工作交给计算机。还在等什么呢,赶快下载试用吧,get一个新的技能!
如果您对本文感兴趣,欢迎持续关注后续更多Python应用系列文章。