python读取word详解【from docx import Document】

532 篇文章 88 订阅
订阅专栏

python读取word详解【from docx import Document】


目录

python读取word详解【from docx import Document】

前言

环境

示例字符串

下载环境

导入环境

Document读取word

行拆分

信息分析

数据分组

csv文件写入

PyCharm打开效果:

Excel打开效果:


 

前言

        我们平时工作的时候会有很多的时候会遇到需要将word里面的有些杂乱的数据格式化到Excel中去,但是如果手动操作那真是【超级无语】,很崩溃,几百页的word让你慢慢复制粘贴,会死掉的。所以我们需要使用程序来完成,使用python先通过【docx】的包将word中的文字逐行读取出来,再根据行的数据格式进行数据清洗,清洗成对应的列表数据,批量写入Excel即可,这里我写入的是【CSV】文件,也可以通过Excel直接打开的。

环境

系统:win10

工具:PyCharm Community Edition 2021.3.1

解析目标类型:*.docx文件

输出目标类型:*.csv文件

需要用包:pip install docx

使用技巧:字符串处理

示例字符串

1、( A )不可存放于码头普通仓库内。

A、爆炸品          B、棉料              C、煤粉

2、( A )负责核发危险化学品及其包装物、容器生产企业的工业产品生产许可证,并依法对其产品质量实施监督,负责对进出口危险化学品及其包装实施检验。

A、质量监督检验检疫部门     B、安全生产监督局      C、公安部门

3、( A )告诉我们,构成管理系统的各要素是运动和发展的,它们相互联系又相互制约。在生产经营单位建立、健全安全生产责任制是对这一原则的应用。

A、动力相关性原则      B、动力原则        C、人本原理

4、( A )即根据演练工作需要,采取必要安全防护措施,确保参演、观摩等人员以及生产运行系统安全。

A、演练工作安全保障            B、安全防护措施         C、系统安全

5、( A )建立健全应急物资储备保障制度,完善重要应急物资的监管、生产、储备、调拨和紧急配送体系。

A、国家              B、社会               C、企业

下载环境

pip install docx

导入环境

from docx import Document
import csv
import uuid

import re

Document读取word

from docx import Document
import csv
import uuid
import re

file = Document("word.docx")

print(file)

输出对象查看是否读取成功,可以看到有对象的输出,代表读取成功。

使用【paragraphs】获取段落信息,可以看出输出的文字。

行拆分

拆分题目行与选择行

from docx import Document
import csv
import uuid
import re

file = Document("word.docx")
# 拆分依据
info = r"( A )|( B )|( C )|(  )"
# 输出样式
header_list2 = ["题型", "难度", "题目问题", "正确答案", "选项A", "选项B", "选项C"]
# 获取file的段落对象
for item in file.paragraphs:
    # 正则区分行
    te = re.search(info, item.text)
    print(te)

测试输出效果:

信息分析

正则判断根据答案进行判断的,如果这个行有就能输出,如果没有也就是选项那么就会输出【None】,所以我们判断一下是否等于【None】来区分题目行与选项行。

数据分组

from docx import Document
import csv
import uuid
import re

file = Document("word.docx")
# 拆分依据
info = r"( A )|( B )|( C )|(  )"
# 输出样式
header_list2 = ["题型", "难度", "题目问题", "正确答案", "选项A", "选项B", "选项C"]
# 用于最终存储
data_list = []
# 用于存储集合·前两项固定的可以直接写上·我们主要拆分后面5列
list_child = ["单选", "1", "", "", "", "", ""]
# 获取file的段落对象
for item in file.paragraphs:
    # 正则区分行
    te = re.search(info, item.text)
    if te != None:
        if list_child[2] != "":
            data_list.append(list_child)
        list_child = ["单选", "1", "", "", "", "", ""]
        list_child[2] = item.text.replace(item.text[te.span()[0]:te.span()[1]], "(   )")
        list_child[3] = item.text[te.span()[0]:te.span()[1]]
    else:
        item2Len = []
        for item2 in item.text.split(" "):
            if item2 != "":
                item2Len.append(item2)
        list_child[4] = item2Len[0]
        list_child[5] = item2Len[1]
        list_child[6] = item2Len[2]

print(data_list)

分组效果:

csv文件写入

直接创建一个新的文件写入即可。

from docx import Document
import csv
import uuid
import re

file = Document("word.docx")
# 拆分依据
info = r"( A )|( B )|( C )|(  )"
# 输出样式
header_list2 = ["题型", "难度", "题目问题", "正确答案", "选项A", "选项B", "选项C"]
# 用于最终存储
data_list = []
# 用于存储集合·前两项固定的可以直接写上·我们主要拆分后面5列
list_child = ["单选", "1", "", "", "", "", ""]
# 获取file的段落对象
for item in file.paragraphs:
    # 正则区分行
    te = re.search(info, item.text)
    if te != None:
        if list_child[2] != "":
            data_list.append(list_child)
        list_child = ["单选", "1", "", "", "", "", ""]
        list_child[2] = item.text.replace(item.text[te.span()[0]:te.span()[1]], "(   )")
        list_child[3] = item.text[te.span()[0]:te.span()[1]]
    else:
        item2Len = []
        for item2 in item.text.split(" "):
            if item2 != "":
                item2Len.append(item2)
        list_child[4] = item2Len[0]
        list_child[5] = item2Len[1]
        list_child[6] = item2Len[2]

fileName = "{0}.csv".format(uuid.uuid4())
with open(fileName, 'w', encoding="utf-8-sig", newline="") as csvFile:
    wr = csv.writer(csvFile)
    wr.writerow(header_list2)
    wr.writerows(data_list)

写入效果:

PyCharm打开效果:

Excel打开效果:

演示完毕,根据实际需求处理数据即可。

python办公自动化(6)——读取word文档
tianshijie08的博客
08-21 9621
夜曲编程笔记
python读取word内容复制粘贴,Python读取word文本操作详解
weixin_34961316的博客
03-26 3484
本文研究的主要问题时Python读取word文本操作,分享了相关概念和实现代码,具体如下。一,docx模块Python可以利用python-docx模块处理word文档,处理方式是面向对象的。也就是说python-docx模块会把word文档,文档中的段落、文本、字体等都看做对象,对对象进行处理就是对word文档的内容处理。二,相关概念如果需要读取word文档中的文字(一般来说,程序也只需要认识w...
Python读取word文本操作详解
09-20
主要介绍了Python读取word文本操作详解,介绍了涉及到的模块,相关概念,模块的安装等内容,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
python 处理word
09-03
使用python整理word文档,如果文档中的字体为斜体,把斜体文字的样式更改为特定的字符样式,不是斜体的不更改
Python写一段代码读取word文件内容】
最新发布
qq_36253366的博客
08-09 461
类,然后加载了一个Word文档。接着,它遍历文档中的每一个段落,并打印出每个段落的文本内容。此外,它还展示了如何遍历文档中的所有表格,并打印出每个表格中的单元格内容。库主要关注于文档中文本和表格内容的提取和修改,对于文档中的图片、复杂格式(如页眉页脚)等内容的处理可能需要其他方法或库。这个库允许你创建、修改以及提取Microsoft Word文件(.docx)的内容。在Python读取Word文件(.docx格式)的内容,你通常需要借助第三方库,如。替换为你的Word文件的实际路径。
Python操作word基础
热门推荐
m0_64336780的博客
07-16 1万+
在办公自动化的操作,往往可能会存在Word的操作。因为在办公时,对文档的操作是必不可少的。而在Python操作Word时,可以使用一个三方的模块库Python-docx安装常用方法与属性。
Python 读取 Word 文件
Python老吕的博客
07-15 1456
库为Python提供了强大的Word文档处理能力,支持读取、修改和创建Word文档。通过掌握其基本用法和进阶技巧,你可以轻松地处理各种Word文档,并实现自动化文档处理和分析的任务。
使用Python轻松批量读取Word文档及各种Word元素的文字内容
nuclear2011的博客
03-29 8476
本文介绍了如何使用Python批量从Word文档及各种Word元素中提取文本内容。包含详细步骤介绍及代码示例。
python读取word文档
一步一脚印
11-25 2683
基本的读取操作读取文件内容输出文章的标题输出文章的1级标题输出文章的多级标题输出正文输出段落内容:输出一段的内容输出所有段落的内容保存文章 读取文件内容 from docx import Document file = Document("E:\\File\\大一\\大一下学期/马克思.docx") 我们直接输出文章内容是不可以的: print(file) # <docx.document.Document object at 0x000002686EE048C0> 我们可以使用循环的方式进
python读取docx文件_Python读写docx文件
weixin_39710106的博客
11-21 572
Python读写word文档有现成的库可以处理。我这里采用 python-docx。可以用pip install python-docx安装一下。这里说一句,ppt和excel也有类似的库哦,而且是直接读取文件里面的xml数据。所以doc格式得另找其他库处理,doc格式不是基于xml的。1、新建或打开文件。这个比较简单用docxDocument类,若指定路径则是打开文档;若没有指定路径则是新建文...
python读取word文档中的多级标题处理_Python读取word文本操作详解
weixin_36064575的博客
02-04 4776
Python读取word文本操作详解发布时间:2020-08-28 04:27:34来源:脚本之家阅读:105作者:熊猫大哥大本文研究的主要问题时Python读取word文本操作,分享了相关概念和实现代码,具体如下。一,docx模块Python可以利用python-docx模块处理word文档,处理方式是面向对象的。也就是说python-docx模块会把word文档,文档中的段落、文本、字体等都看...
python读取word文档的方法
12-24
本文实例讲述了python读取word文档的方法。分享给大家供大家参考。具体如下: 首先下载安装win32com from win32com import client as wc word = wc.Dispatch('Word.Application') doc = word.Documents.Open('c:/test') doc.SaveAs('c:/test.text', 2) doc.Close() word.Quit() 这种方式产生的text文档,不能用python用普通的r方式读取,为了让python可以用r方式读取,应当写成 doc.SaveAs('c:/test',
Python3 读取Word文件方式
09-17
今天小编就为大家分享一篇Python3 读取Word文件方式,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
Python 实现向word(docx)中输出
09-17
from docx import Document from docx.shared import Pt # 创建一个新的文档对象 document = Document() # 向文档中添加一个新段落 document.add_paragraph('Hello, world!') # 保存文档 document.save('example....
Python读写word文档
群智能算法开发
05-07 2457
和纯文本文档相比,word种含有各种格式和样式,需要设置字体格式和大小、颜色,加粗等,段落间距行距等,其中还会涉及图表、公式等插入与调整。run对象一个Run对象是具有相同格式的文本,当发生变化的时候就需要一个新的Run对象。例如:共计6个run对象的文本:AVL Cruise是AVL公司开发的一款整车及动力总成仿真分析软件。它可以研究整车的动力性、燃油经济性、排放性能及制动性能,是车辆系统的集成开发平台。AVL Cruise软件已经成功的在整车生产商和零部件供应商之间搭建起了沟通的桥梁。
python读取word
weixin_35756130的博客
01-03 890
Python读取 Word 文档需要使用第三方库,比较常用的有 python-docx 和 pywin32。 python-docx 是一个用于读写 Microsoft Word 2007/2008 docx 文件的 Python 库,使用起来相对简单。下面是一个示例: pip install python-docx# 读取文档 from docx import Document doc...
使用 Python 读取 Word 文件
engchina的专栏
03-23 1297
使用 Python 读取 Word 文件
python怎么读取word文件_如何使用pythonpython-docx模块读取Word文档
weixin_39721009的博客
11-20 5026
python是个很有趣的语言,可以在cmd命令窗口运行,还有很多的功能强大的模块。这篇经验告诉你如何利用pythonpython-docx模块读取Word文档。工具/原料windows系统电脑一台python软件方法/步骤1第一,先安装python-docx模块。打开cmd命令窗口,输入pip install python-docx,就可通过管道安装python-docx模块。2第二,进入cmd...
python 读取excel内容写入到word
06-07
你可以使用Python中的openpyxl库来读取Excel文件,使用Python中的python-docx库来写入Word文件。 以下是一个基本的示例代码,它读取一个名为“example.xlsx”的Excel文件,提取第一个工作表中的数据,并将其写入名为“example.docx”的Word文件中: ```python import openpyxl from docx import Document # 打开Excel文件和工作表 wb = openpyxl.load_workbook('example.xlsx') sheet = wb.active # 创建一个新的Word文档 document = Document() # 逐行读取Excel文件并将数据写入Word文档 for row in sheet.iter_rows(values_only=True): # 将行中的数据连接成一个字符串 row_text = ' '.join([str(cell) for cell in row]) # 将字符串写入Word文档中 document.add_paragraph(row_text) # 保存Word文档 document.save('example.docx') ``` 请注意,此示例仅提供了一种方法来读取Excel文件和写入Word文件。具体实现方式可能因Excel文件的结构和Word文件的需求而有所不同。
写文章

热门文章

  • 特殊符号大全(建议收藏_复制着用_数学符号最下面) 180287
  • HarmonyOS应用开发者高级认证(88分答案) 77382
  • 【腾讯云 HAI域探秘】——即时职场生存指南小游戏以及【自行搭建Stable Diffusion图片AI绘制 | ChatGLM2-6B AI进行智能对话 | Pytorch2.0 AI框架视频处理】 71601
  • DFS(深度搜索)无向图遍历(JAVA手把手深入解析) 70995
  • Python基础(适合初学-完整教程-学习时间一周左右-节约您的时间) 59447

分类专栏

  • 数据结构与算法【C】 付费 1篇
  • stable diffusion 1篇
  • Baidu Comate专栏 74篇
  • 华为Could API人工智能系列 26篇
  • springboot系列 8篇
  • 坚果派HarmonyOS 51篇
  • Python之JavaScript逆向 17篇
  • H5+CSS3+JS逆向前置 20篇
  • OpenCV技术点检索专栏 17篇
  • 腾讯云 HAI域探秘 11篇
  • 腾讯云(向量数据库)_百度云(千帆4) 86篇
  • Java数组全套 12篇
  • 人工智能应用工程师技能提升 9篇
  • Eolink 11篇
  • 笔记本购买指南 2篇
  • uni-app 1篇
  • idea社区版springboot配置 4篇
  • 面试技巧 4篇
  • 实施工程师 13篇
  • Pandas——AI必学基础 7篇
  • Python可视化数据分析 11篇
  • Python折线图(检索栏) 4篇
  • 大三实习的杂文
  • 预习/复习专栏 10篇
  • Linux从入门到精通 14篇
  • Excel_base 18篇
  • Linux基础到环境 8篇
  • MySQL技能完整学习列表 30篇
  • Python数据集(分析) 2篇
  • 科目考试专栏 6篇
  • Python基础考试 25篇
  • Python爬虫基础考试 8篇
  • ASP.NET MVC 23篇
  • 软考(软件设计)中级 23篇
  • ASP.NETCore微服务 13篇
  • ASP.NET Web 4篇
  • Java高级程序设计 6篇
  • EF 7篇
  • DBHelper 4篇
  • Spark数据分析 18篇
  • MySQL复习专栏 18篇
  • Hive考试 11篇
  • Hadoop考试 10篇
  • Linux考试 21篇
  • SSM框架 6篇
  • Springboot考试 14篇
  • JavaWeb考试 18篇
  • vue/cli 15篇
  • Python技术基础-案例源码 31篇
  • Scratch3.0少儿编程 34篇
  • Python_Tkinter教程 3篇
  • 计算机理论&各类面试题 446篇
  • CSDN年度总结与新年目标 10篇
  • web&移动端&HarmonyOS 71篇
  • 高数必修① 9篇
  • 2023年蓝桥杯 219篇
  • 大数据-CSDN云平台-阿里云-华为云-服务器 307篇
  • 2022年蓝桥杯 124篇
  • Java&Python&Net&软测&Go+ 532篇

最新评论

  • 黑客技术的网站(❤️可以自学,建议收藏❤️)

    红目香薰: 网址更新了,现在不清楚。

  • 黑客技术的网站(❤️可以自学,建议收藏❤️)

    x2911552589: 你好作者大大,SecurityTube进不去,是我的问题吗?还是大家都进不去?

  • AI舌苔诊病(文心快码Baidu Comate)进行代码解析与完成项目二创

    Ivy@HPC: 文章看起来挺全面的,涵盖了前端开发的各个方面,从框架、代码生成到优化、设计,还有行业趋势和职业规划,对前端开发者来说是个不错的参考指南。不过提到AI舌苔诊病项目二创,感觉与前端的内容结合得有点跳跃,可能是想展示前端技术在不同领域的应用吧。总的来说,信息量大,值得前端小伙伴花时间阅读和学习。

  • IntelliJ IDEA安装使用教程——社区免费版——附中文插件安装

    红目香薰: 不能直接创建,但是能maven处理啊。

  • IntelliJ IDEA安装使用教程——社区免费版——附中文插件安装

    孤情.: 这个版本没法新建springboot项目啊

最新文章

  • StableDiffusion线稿获取方法——AI取线稿
  • 828华为云征文|华为云Flexus X实例下的场景体验——小企业必备——Tomcat环境架设
  • 828华为云征文|华为云Flexus X实例下的场景体验——小企业必备——JAVA环境搭建——保姆级教学
2024
09月 14篇
08月 8篇
07月 18篇
06月 67篇
05月 14篇
04月 35篇
03月 16篇
02月 21篇
01月 53篇
2023年573篇
2022年620篇
2021年725篇
2020年6篇
2019年1篇
2018年2篇
2017年7篇

目录

目录

分类专栏

目录

评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

红目香薰

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或 充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值

玻璃钢生产厂家口碑好的玻璃钢花盆宜春个性化玻璃钢雕塑优势佛像玻璃钢仿铜雕塑制作玻璃钢仿真雕塑怎样收费阳江动物园玻璃钢雕塑北京商场美陈灯饰画加工厂岳阳玻璃钢雕塑厂新疆卡通玻璃钢雕塑定制伊春校园玻璃钢雕塑公司溆浦玻璃钢雕塑厂家廊坊玻璃钢仿真水果雕塑深圳节庆商场美陈怎么样主题公园玻璃钢园林艺术雕塑大型玻璃钢雕塑内部钢铁加固江苏玻璃钢雕塑优选企业太原玻璃钢公园雕塑小品玻璃钢卡通雕塑要求嘉峪关哪有玻璃钢雕塑玻璃钢仿真型十二生肖雕塑云南仿古玻璃钢雕塑福建季节性商场美陈批发价曲阳玻璃钢卡通人物雕塑南昌玻璃钢雕塑在那东城玻璃钢雕塑工程玻璃钢蔬菜雕塑哪家靠谱河北创意玻璃钢雕塑销售厂家优质玻璃钢人物雕塑制作党建文化玻璃钢卡通雕塑出厂价格运城玻璃钢卡通雕塑厂家宁夏节日商场美陈香港通过《维护国家安全条例》两大学生合买彩票中奖一人不认账让美丽中国“从细节出发”19岁小伙救下5人后溺亡 多方发声单亲妈妈陷入热恋 14岁儿子报警汪小菲曝离婚始末遭遇山火的松茸之乡雅江山火三名扑火人员牺牲系谣言何赛飞追着代拍打萧美琴窜访捷克 外交部回应卫健委通报少年有偿捐血浆16次猝死手机成瘾是影响睡眠质量重要因素高校汽车撞人致3死16伤 司机系学生315晚会后胖东来又人满为患了小米汽车超级工厂正式揭幕中国拥有亿元资产的家庭达13.3万户周杰伦一审败诉网易男孩8年未见母亲被告知被遗忘许家印被限制高消费饲养员用铁锨驱打大熊猫被辞退男子被猫抓伤后确诊“猫抓病”特朗普无法缴纳4.54亿美元罚金倪萍分享减重40斤方法联合利华开始重组张家界的山上“长”满了韩国人?张立群任西安交通大学校长杨倩无缘巴黎奥运“重生之我在北大当嫡校长”黑马情侣提车了专访95后高颜值猪保姆考生莫言也上北大硕士复试名单了网友洛杉矶偶遇贾玲专家建议不必谈骨泥色变沉迷短剧的人就像掉进了杀猪盘奥巴马现身唐宁街 黑色着装引猜测七年后宇文玥被薅头发捞上岸事业单位女子向同事水杯投不明物质凯特王妃现身!外出购物视频曝光河南驻马店通报西平中学跳楼事件王树国卸任西安交大校长 师生送别恒大被罚41.75亿到底怎么缴男子被流浪猫绊倒 投喂者赔24万房客欠租失踪 房东直发愁西双版纳热带植物园回应蜉蝣大爆发钱人豪晒法院裁定实锤抄袭外国人感慨凌晨的中国很安全胖东来员工每周单休无小长假白宫:哈马斯三号人物被杀测试车高速逃费 小米:已补缴老人退休金被冒领16年 金额超20万

玻璃钢生产厂家 XML地图 TXT地图 虚拟主机 SEO 网站制作 网站优化