精华内容
下载资源
问答
  • 这里说一句,ppt和excel也有类似的库哦,而且是直接读取文件里面的xml数据。所以doc格式得另找其他库处理,doc格式不是基于xml的。帮助文档:http://python-docx.readthedocs.org/en/latest/1、新建或打...

    Python读写word文档有现成的库可以处理。我这里采用 python-docx。可以用pip install python-docx安装一下。

    这里说一句,ppt和excel也有类似的库哦,而且是直接读取文件里面的xml数据。所以doc格式得另找其他库处理,doc格式不是基于xml的。

    帮助文档:http://python-docx.readthedocs.org/en/latest/

    1、新建或打开文件。这个比较简单用docx的Document类,若指定路径则是打开文档;若没有指定路径则是新建文档

    #coding:utf-8

    import docx

    #新建文档

    doc_new = docx.Document()

    #读取文档

    doc = docx.Document(ur'C:\1.docx')

    2、保存文件。有打开,就有保存。用Document类的save方法,其中参数是保存的文件路径,或者要保存的文件流。一般指定路径即可。

    doc.save(path_or_stream)

    3、对象集合。python-docx包含了word文档的相关对象集合。

    doc.paragraphs #段落集合

    doc.tables #表格集合

    doc.sections #节 集合

    doc.styles #样式集合

    doc.inline_shapes #内置图形 等等...

    4、插入段落。段落是word最基本的对象之一。

    doc.add_paragraph(u'第一段',style=None) #插入一个段落,文本为“第一段”

    #默认是不应用样式,这里也可以不写style参数,或者指定一个段落样式

    doc.add_paragraph(u'第二段',style='Heading 2')

    #这些样式都是word默认带有的样式,可以直接罗列出来有哪些段落样式

    print [s.name for s in doc.styles if s.type==1]

    5、新增样式。这个帮助文档里面说得不仔细,而且还是英文的。我手头上的项目用到这个,就自己琢磨出怎么使用,如下。

    #coding:utf-8

    from docx import Document

    from docx.shared import RGBColor #这个是docx的颜色类

    #新建文档

    doc = Document()

    #新增样式(第一个参数是样式名称,第二个参数是样式类型:1代表段落;2代表字符;3代表表格)

    style = doc.styles.add_style('style name 1', 2)

    #设置具体样式(修改样式字体为蓝色,当然还可以修改其他的,大家自己尝试)

    style.font.color.rgb = RGBColor(0x0, 0x0, 0xff)

    6、应用字符样式。字符自然是在段落里面的,可以采用下面方法给段落追加文字和设置字符样式。

    #插入一个空白段落

    p = doc.add_paragraph('')

    p.add_run('123', style="Heading 1 Char")

    p.add_run('456')

    p.add_run('789', style="Heading 2 Char")

    #这样一个段落就应用了两个字符样式,中间“456”就没应用样式

    print p.text #输出结果是u'123456789' 也还是连续的

    7、设置字体。当然可以不用通过设置样式对某些字进行设置,也可以直接设置。

    p = doc.add_paragraph('')

    r = p.add_run('123')

    r.font.bold = True #加粗

    r.font.italic = True #倾斜 等等...

    8、表格操作。表格也是经常用到的一种对象类型。

    #新建一个2x3的表格,style可以不写

    table=doc.add_table(rows=2,cols=3,style=None)

    #可以用table 的rows和columns得到这个表格的行数和列数

    print len(table.rows)

    print len(table.columns)

    #遍历表格

    for row in table.rows:

    row.cells[0].text = '1'

    #print row.cells[0].text

    #新增行或列

    table.add_row()

    table.add_column()

    Word常见操作差不多就是这些。大家可以查看帮助文档,也可以用dir和help查看对象的方法属性和帮助。

    以上这篇Python读写docx文件的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

    本文标题: Python读写docx文件的方法

    本文地址: http://www.cppcns.com/jiaoben/python/227318.html

    展开全文
  • Python读写docx文件

    2020-11-21 02:40:46
    Python读写word文档有现成的库可以处理。我这里采用 python-docx。可以用pip install python-docx安装一下。这里说一句,ppt和excel也有类似的库哦,而且是直接读取文件里面的xml数据。所以doc格式得另找其他库处理...

    Python读写word文档有现成的库可以处理。我这里采用 python-docx。可以用pip install python-docx安装一下。

    这里说一句,ppt和excel也有类似的库哦,而且是直接读取文件里面的xml数据。所以doc格式得另找其他库处理,doc格式不是基于xml的。

    1、新建或打开文件。这个比较简单用docx的Document类,若指定路径则是打开文档;若没有指定路径则是新建文档

    #coding:utf-8

    import docx

    #新建文档

    doc_new = docx.Document()

    #读取文档

    doc = docx.Document(ur'C:\1.docx')

    2、保存文件。有打开,就有保存。用Document类的save方法,其中参数是保存的文件路径,或者要保存的文件流。一般指定路径即可。

    doc.save(path_or_stream)

    3、对象集合。python-docx包含了word文档的相关对象集合。

    doc.paragraphs #段落集合

    doc.tables #表格集合

    doc.sections #节 集合

    doc.styles #样式集合

    doc.inline_shapes #内置图形 等等...

    4、插入段落。段落是word最基本的对象之一。

    doc.add_paragraph(u'第一段',style=None) #插入一个段落,文本为“第一段”

    #默认是不应用样式,这里也可以不写style参数,或者指定一个段落样式

    doc.add_paragraph(u'第二段',style='Heading 2')

    #这些样式都是word默认带有的样式,可以直接罗列出来有哪些段落样式

    print [s.name for s in doc.styles if s.type==1]

    5、新增样式。这个帮助文档里面说得不仔细,而且还是英文的。我手头上的项目用到这个,就自己琢磨出怎么使用,如下。

    #coding:utf-8

    from docx import Document

    from docx.shared import RGBColor #这个是docx的颜色类

    #新建文档

    doc = Document()

    #新增样式(第一个参数是样式名称,第二个参数是样式类型:1代表段落;2代表字符;3代表表格)

    style = doc.styles.add_style('style name 1', 2)

    #设置具体样式(修改样式字体为蓝色,当然还可以修改其他的,大家自己尝试)

    style.font.color.rgb = RGBColor(0x0, 0x0, 0xff)

    6、应用字符样式。字符自然是在段落里面的,可以采用下面方法给段落追加文字和设置字符样式。

    #插入一个空白段落

    p = doc.add_paragraph('')

    p.add_run('123', style="Heading 1 Char")

    p.add_run('456')

    p.add_run('789', style="Heading 2 Char")

    #这样一个段落就应用了两个字符样式,中间“456”就没应用样式

    print p.text #输出结果是u'123456789' 也还是连续的

    7、设置字体。当然可以不用通过设置样式对某些字进行设置,也可以直接设置。

    p = doc.add_paragraph('')

    r = p.add_run('123')

    r.font.bold = True #加粗

    r.font.italic = True #倾斜 等等...

    8、表格操作。表格也是经常用到的一种对象类型。

    #新建一个2x3的表格,style可以不写

    table=doc.add_table(rows=2,cols=3,style=None)

    #可以用table 的rows和columns得到这个表格的行数和列数

    print len(table.rows)

    print len(table.columns)

    #遍历表格

    for row in table.rows:

    row.cells[0].text = '1'

    #print row.cells[0].text

    #新增行或列

    table.add_row()

    table.add_column()

    Word常见操作差不多就是这些。大家可以查看帮助文档,也可以用dir和help查看对象的方法属性和帮助。

    展开全文
  • 中文编码问题总是让人头疼(尤其是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/

    展开全文
  • 主要介绍了基于Python获取docx/doc文件内容代码解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
  • 茫茫文档中找寻,特此献给有需要的哥们,好与不好仅供参看,自己觉得有用!
  • Execl格式的数据提取和解析,我们在之前的文章分享过一些非常好用的Python第三方库,本文中主要介绍如何使用Python python-docx 模块提取Word 文件中的文本信息和表格数据。python-docx 安装本文python-docx 安装 在...
  • 搜索文档中是否包含指定词汇,批量替换 暂只支持docx文本替换,若文档中包含表格图片等信息会自动跳过 添加支持表格功能,并可读取csv文件形成关键字
  • 在日常工作中,可能需要对很多的docx文件进行批处理,例如教师在批阅学生提交的电子版作业时,需要填写日期等信息,假设一个年级有100人,那么100份作业就需要填写100次日期, 这个工作是简单的、重复的,那么是不是...
  • 一,docx模块Python可以利用python-docx模块处理word文档,处理...二,相关概念如果需要读取word文档中的文字(一般来说,程序也只需要认识word文档中的文字信息),需要先了解python-docx模块的几个概念。1,Docume...
  • I have a folder containing several .docx files with names [Code2001.docx, Code2002.docx... Code2154.docx].I'm trying to write a script that will:Open each .docx fileAppend one line to the document; "T...
  • Python docx module for Word or WPS processing 本文是通过docx把word中的表格中的某些已填好的内容提取出来,存入excel表格。 首先安装docxpython模块: pip install python-docx 由于处理的为中文和符号,...
  • 在日常工作中,可能需要对很多的docx文件进行批处理,例如教师在批阅学生提交的电子版作业时,需要填写日期等信息,假设一个年级有100人,那么100份作业就需要填写100次日期,这个工作是简单的、重复的,那么是不是...
  • 安装python-docx包 ...读取文件 1.创建文件对象  file=docx.Document(文件地址) 2.获取所有段落  file.paragraphs 3.获取第n个段落的文本内容  file.paragraphs[n].text 代码示例 import docx mystr='--...
  • 难点在于,docx文件里的图是用excel作的那种,结构都是散的,如果是单张图片,复制粘贴很简单。但这种excel生成的图,就很头大了,不知道有没有办法,将这个图转成PNG或者JPG格式,又或者不转格式,直接带着格式复制...
  • 首先安装docx模块,通过pip install docx或者在docx官方链接上下载安装都可以下面来看下如何解析docx文档:文档格式如下有3个部分组成 1 正文:text文档 2 一个表格。 3一个插入的文件对象。4 一个图片 这4个部分是...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 6,079
精华内容 2,431
关键字:

python读取docx文件

python 订阅
友情链接: JIAOTONGDENG.rar