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

 2023-09-05 阅读 97 评论 0

摘要:中文编码问题总是让人头疼(尤其是mac本),想要用 Python读取word中的内容。用open()经常报错,通过百度搜索+问身边小伙伴发现了 Python有专门读取.docx的模块python_docx。本篇文章主要来解决一个读取docx文件的基本操作。希望感兴趣的小伙伴可以坚持看下去同时欢迎提出宝贵

中文编码问题总是让人头疼(尤其是mac本),想要用

Python读取word中的内容。用open()经常报错,通过百度搜索+问身边小伙伴发现了

Python有专门读取.docx的模块python_docx。本篇文章主要来解决一个读取docx文件的基本操作。希望感兴趣的小伙伴可以坚持看下去同时欢迎提出宝贵的意见让我们一起进步!

01:问题抛出与引入

import docx

path = "C:\\Users\\qin\\Desktop\\1.docx"

file_object=open(path,'rb')

print(file_object.read())

#输出结果如下所示:

b'PK\\x03\\x04\\x14\\x00\\x06\\x00\\x08\\x00\\x00\\x00!\\x00J\\xbc\\x02qm\\x01\\x00\\x00

(\\x06\\x00\\x00\\x13\\x00\\x08\\x02[Content_Types].xml \\xa2\\x04\\x02(\\xa0\.....

一个很简单的docx文件,打印出来的结果却不是我们想要的。对此引入一个十分好用的docx模块,下面就详细介绍该模块的一些基本操作。

02:安装docx模块

pip install python_docx

03:新建文档对象

import docx

from docx import Document

# 新建文档,并将其保存名为“test.docx”的文件

document = Document()

document.save('test.docx')

04:添加文档内容

import docx

from docx import Document

from docx.shared import Inches

document = Document('C:\\Users\\qin\\Desktop\\1.docx')

document.add_heading('I like python', 0)#插入标题:0表示样式为title标题

document.add_heading('一级标题', level=1)#插入1级标题

p = document.add_paragraph('Python是一种计算机程序设计语言 ')#插入段落

document.add_picture('C:\\Users\\qin\\Desktop\\1.png', width=Inches(1.25)) #添加图片并指定宽度

table = document.add_table(rows=1, cols=3) #添加一个表格,每行三列

hdr_cells = table.rows[0].cells #获取第一行的单元格列表对象

hdr_cells[0].text = 'ID' #为每一个单元格赋值

hdr_cells[1].text = 'Name'

hdr_cells[2].text = 'Age'

new_cells = table.add_row().cells #为表格添加一行

new_cells[0].text = '1'

new_cells[1].text = 'Tom'

new_cells[2].text = '15'

document.add_page_break() #添加分页符

05:保存文档内容

名字相同则将修改的文件内容

保存;

名字不同则将修改的文件内容

另存为。

import docx

from docx import Document

document.save('C:\\Users\\qin\\Desktop\\1.docx')#保存

document.save('C:\\Users\\qin\\Desktop\\2.docx')#另存为

06:读取文本内容

import docx

from docx import Document

path = "C:\\Users\\qin\\Desktop\\1.docx"

document = Document(path)

for paragraph in document.paragraphs:

print(paragraph.text)

07:读取表格内容

import docx

from docx import Document

path = "C:\\Users\\qin\\Desktop\\1.docx"

document = Document(path) # 读入文件

tables = document.tables # 获取文件中的表格集

table = tables[0] # 获取文件中的第一个表格

for i in range(0, len(table.rows)): # 从表格第一行开始循环读取表格数据

result = f'{(table.cell(i, 0).text):<5}' + "" + f'{(table.cell(i, 1).text):<5}' + "" + f'{(table.cell(i, 2).text):<5}'

# cell(i,0)表示第(i+1)行第1列数据,以此类推

print(result)

想要知道docx模块更多资料参考:https://python-docx.readthedocs.io/en/latest/

版权声明:本站所有资料均为网友推荐收集整理而来,仅供学习和研究交流使用。

原文链接:https://808629.com/208.html

发表评论:

本站为非赢利网站,部分文章来源或改编自互联网及其他公众平台,主要目的在于分享信息,版权归原作者所有,内容仅供读者参考,如有侵权请联系我们删除!

Copyright © 2022 86后生记录生活 Inc. 保留所有权利。

底部版权信息