1.将doc转为docx

python3.8中win32com 要安装pypiwin32 pip install pypiwin32

from win32com import client as wc

word = wc.Dispatch("Word.Application")

doc = word.Documents.Open(路径+名称.doc)

doc.SaveAs(路径+名称.docx, 12) 12为docx

doc.Close()

word.Quit()

2.读取段落

import docx

docStr = Document(docName) 打开文档

for paragraph in docStr.paragraphs:

parStr = paragraph.text

--》paragraph.style.name == 'Heading 1' 一级标题

--》paragraph.paragraph_format.alignment == 1 居中显示

--》paragraph.style.next_paragraph_style.paragraph_format.alignment == 1 下一段居中显示

--》paragraph.style.font.color

3.读取表格

numTables = docStr.tables

for table in numTables:

#行列个数

row_count = len(table.rows)

col_count = len(table.columns)

for i in range(row_count):

row = table.rows[i].cells

i行j列内容:row[j].text

或者:

row_count = len(table.rows)

col_count = len(table.columns)

for i in range(row_count):

for j in range(col_count):

print(table.cell(i,j).text)

4.按样式读取

读取标题

for p in doc.paragraphs:

if p.style.name=='Heading 1':

print(p.text)

import re

for p in doc.paragraphs:

if re.match("^Heading \d+$",p.style.name):

print(p.text)

读取正文

for p in doc.paragraphs:

if p.style.name=='Normal':

print(p.text)

5.获取docx支持的样式

from docx.enum.style import WD_STYLE_TYPE

for i in s:

if i.type==WD_STYLE_TYPE.PARAGRAPH:

print(i.name)

6.设置首行缩进

from docx.shared import Inches,Pt

par2 = doc.add_paragraph('段落文本')

# 左缩进,0.5 英寸

par2.paragraph_format.left_indent = Inches(0.5)

# 右缩进,20 磅

par2.paragraph_format.right_indent = Pt(20)

# 首行缩进

par2.paragraph_format.first_line_indent = Inches(1)

查看首行缩进单位

from docx import Document

from docx.shared import Inches

from docx.oxml.ns import qn

from docx.shared import Cm, Pt

from docx.enum.text import WD_PARAGRAPH_ALIGNMENT

from docx.shared import RGBColor

myDocument = Document('2020年建交集团3月分析报告.docx')

for paragraph in myDocument.paragraphs:

print(paragraph.paragraph_format.first_line_indent)

print(dir(paragraph))

python打开已有docx文档_python-docx读取doc,docx文档相关推荐

  1. python读取docx文件出错_Python:读取 .doc、.docx 两种 Word 文件简述及“Word 未能引发事件”错误...

    Python 中可以读取 word 文件的库有 python-docx 和 pywin32. 优点 缺点 python-docx 跨平台 只能处理 .docx 格式,不能处理.doc格式 pywin3 ...

  2. python读取doc/docx文件

    仅此记录python读取doc/docx文件的方法,和常用简单的open txt文件完全不同(版本python 3.6   Win10) docx 使用docx包,python为其专用接口,pytho ...

  3. python打开已有docx文档_python读取docx文件,就是如此简单

    中文编码问题总是让人头疼(尤其是mac本),想要用 Python读取word中的内容.用open()经常报错,通过百度搜索+问身边小伙伴发现了 Python有专门读取.docx的模块python_do ...

  4. python打开word并在前台显示_Python办公自动化:自动打开word文档,你学到了吗?

    今天中公优就业大白和大家分享Python办公自动化:自动打开word文档. python-docx允许您创建新文档以及更改现有文档.实际上,它只允许您更改现有文档; 但如果不存在此文件,将会自动从头开 ...

  5. python打开word并在前台显示_Python自动化办公之Word,全网最全看这一篇就够了

    作者:超级大洋葱806 https://tangxing.blog.csdn.net/article/details/108418066 环境安装 使用Python操作word大部分情况都是写操作,也 ...

  6. POI解析文档内容(txt,doc,docx,xls,xlsx,ppt,pdf)

    Apache POI  是用Java编写的免费开源的跨平台的 Java API,Apache POI提供API给Java程式对Microsoft Office格式档案读和写的功能.POI为" ...

  7. python判断回文数_python如何判断是不是回文数

    什么是回文数: 有这样一类数,他们顺着看和倒着看是相同的数,例如:12321,1221,2332等,这样的数字就称为:回文数. 例子:输入一个5位数,判断它是不是回文数.即12321是回文数,个位与万 ...

  8. python输入一个五位数、判断是否为回文数_python如何判断是不是回文数

    什么是回文数: 有这样一类数,他们顺着看和倒着看是相同的数,例如:12321,1221,2332等,这样的数字就称为:回文数. 例子:输入一个5位数,判断它是不是回文数.即12321是回文数,个位与万 ...

  9. HWPFDocument读取doc,wps文档(含图片读取)

    导包 代码: 1.图片工具类 1 package com.poi.test;2 3 import java.util.ArrayList;4 import java.util.HashMap;5 im ...

  10. php 读取并显示doc,PHP读取doc,docx,xls,pdf,txt内容

    我的一个客户有这样的需求:上传文件,可以是doc,docx,xls,pdf,txt格式,现需要用php读取这些文件的内容,然后计算文件里面字数. 1.PHP读取DOC格式的文件 首先介绍一下如何在wi ...

最新文章

  1. curl get请求_Linux curl 常用示例你都 Get 了吗?| CSDN 博文精选
  2. 阿里云Kubernetes容器服务上体验Knative
  3. python语言的语法_Python语言学习系列------基础语法(一)
  4. main.cpp first defined here 解决
  5. 深入浅出Mysql 读书笔记
  6. 数字化智慧园区建设方案
  7. UE4蓝图API翻译【节点】---? Is Valid
  8. android pin码自定义,Android以编程方式设置或重置SIM卡PIN码
  9. ui automator api 图解
  10. 基于C51单片机的万年历设计(LCD1602显示)
  11. mplayer全参数
  12. php怎么获取账号密码,PHP 前台代码实现获取用户密码功能
  13. Android-Dialogs(一) AlterDialog基本使用
  14. 刷题之旅第11站,ctfshow misc40
  15. 真·富文本编辑器的演进之路-富文本Span的边界探究
  16. Schedule用法实例
  17. 脑裂产生以及解决办法(转载)
  18. 内存按字节 (Byte)编址,地址从A0000H到DFFFFH,共有多少个字节呢?
  19. 第二章 z变换之四 、序列的z变换与连续时间信号的Laplace变换、Fourier变换的关系
  20. CSDN实训 - 通过Java修改游戏存档

热门文章

  1. Hexo/Github.io 配置腾讯云CDN
  2. python资本市场财务数据分析_不懂财务数据分析?教你一分钟看懂财务报表
  3. 我的第一本社会心理学(part2)--社会心理学的理论与方法
  4. 计算机打字声音,键盘打字声音在哪设置
  5. 在Word中使用EndNote插入参考文献
  6. 0门槛操作SEO快排代做项目 无需SEO基础
  7. 如何彻底卸载AutoCAD 2018版
  8. 《学习网站》计算机视觉领域的一些牛人博客,超有实力的研究机构等的网站链接
  9. 等级保护2.0的变化
  10. SharePoint服务器端对象模型 之 使用CAML进展数据查询