当前位置: 首页 > 后端技术 > Python

别问我怎么用python操作Word!

时间:2023-03-25 19:46:36 Python

作者:陈曦来源:早起Python在之前的自动化系列文章中,我们讲解了python如何操作Excel工具openpyxl,也讲了python操作PDF的几种方式。今天我们就来讲解一下Python通过代码操作Word文档docx的常用方法。安装docx是非标准库,需要在命令行(终端)使用pip安装pipinstallpython-docx一定要注意,安装的时候是python-docx,实际调用的时候是docx!Pre-knowledgeWord一般可以分为三个部分:Document,Paragraph,Paragraph,TextBlock,Run,也就是Document-Paragraph-Run的三层结构,这是最常见的情况。其中,Run文本块最难理解,无法完成。如图所示,两个符号之间的短句是一个文本块。一般情况下可以这样理解,但是如果这个短句中有很多不同的文体,就会被分成多个文本块。以图中第一个黄色圆圈为例。如果给这个短句加上一些细节?这时候有4个文本块,有时Word文档中还有表格,这时候就会生成一个新的文档结构。此时的结构和Excel很像,可以看做是Document-Table-Row/Column-Cell四级结构Word阅读1.打开WordfromdocximportDocumentpath=...wordfile=Document(path)to获取段落word文件由一个或多个段落paragraphs=wordfile.paragraphsprint(paragraphs)获取段落文本内容block一个段落paragraph由一个或多个runtextblocksforparagraphinwordfile.paragraphs:forruninparagraph.runs:print(run.text)遍历经典的三级结构遍历表上面的操作完成,遍历table与wordfile.tables中的表的行遍历非常相似:forrowintable.rows:forcellinrow.cells:print(cell.text)traversebycolumnfortableinwordfile.tables:forcolumnintable.列:对于column.cells中的单元格:print(cell.text)writeintoWord创建Word只要不指定路径,默认新建一个Word文件fromdocximportDocumentwordfile=Document()保存文件记得保存wordfile.save(...)...把要保存的路径添加标题wordfile.add_heading(...,level=...)添加段落wordfile。add_paragraph(...)wordfile=Document()wordfile.add_heading('leveltitle',level=1)wordfile.add_paragraph('newparagraph')添加文本块wordfile.add_run(...)添加页面wordfile.add_page_break(...)添加图片wordfile.add_picture(...,width=...,height=...)SetstyleTextfontsetting2.TextotherstylesettingsfromdocximportDocumentfromdocx.sharedimportRGBColor,Ptwordfile=Document(file)forparagraphinwordfile.paragraphs:forruninparagraph.runs:run.font.bold=True#boldrun.font.italic=True#italicrun.font.underline=True#underlinerun.font.strike=True#strikethroughrun.font.shadow=True#Shadowrun.font.size=Pt(20)#字体大小run.font.color.rgb=RGBColor(255,0,0)#字体颜色段落样式设置默认对齐方式为左对齐,可以自行修改总结以上就是如何使用Python中的docx模块实现Word中的常用操作,只要了解Python可以进行哪些类型的操作,enco的时候就可以想到使用Python后面的繁琐工作,下面是几个使用本模块实现办公自动化的Case,希望对你有所帮助