阿宅的学习工作日记 阿宅的学习工作日记
首页
  • 生信相关

    • 生信学习
  • 编程相关

    • R语言笔记
    • python笔记
  • linux拾遗
  • 云筏评测
  • 网站搭建
  • 读书笔记
  • 实用技巧
  • 友情链接
  • vuepress相关
  • 分类
  • 标签
  • 归档

Ivis Tang

阿宅本宅
首页
  • 生信相关

    • 生信学习
  • 编程相关

    • R语言笔记
    • python笔记
  • linux拾遗
  • 云筏评测
  • 网站搭建
  • 读书笔记
  • 实用技巧
  • 友情链接
  • vuepress相关
  • 分类
  • 标签
  • 归档
  • 用Python进行docx文档合并
    • python编程
    ivistang
    2020-05-17

    用Python进行docx文档合并

    使用docx和docxcompose包进行docx文档合并

    # 使用阿里云镜像安装相关模块

    pip install python-docx -i https://mirrors.aliyun.com/pypi/simple/
    pip install docxcompose -i https://mirrors.aliyun.com/pypi/simple/
    
    1
    2

    # 代码1

    该代码实现了将工作目录下所有的docx文件内容进行合并,每个文件间以分页符分隔开。

    from docxcompose.composer import Composer
    import docx
    import os
    doclist = os.listdir()
    doc = Composer(docx.Document())
    for index,file in enumerate(doclist):
        if file.endswith('.docx'):
            sub_doc = docx.Document(file)
        if index < len(doclist)-1:
            sub_doc.add_page_break()
        doc.append(sub_doc)
    doc.save('out.docx')
    del doc
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13

    # 代码2

    该代码添加了将文件夹下所有doc转换成docx再进行合并的模块

    from docxcompose.composer import Composer
    import os
    import docx
    workdir=r'C:\\Users\\tangyw\\Documents\\test' # 此处输入目录
    from win32com import client as wc
    w = wc.DispatchEx('Word.Application')
    # 通过遍历将所有的doc转换成docx
    doclist = os.listdir(workdir)
    for index, file in enumerate(doclist):
        if file.endswith(\'.doc\'):
            doc=w.Documents.Open(os.path.join(workdir,file))
            doc.SaveAs(os.path.join(workdir,file+'x'),12)
            doc.Close()
    w.Quit()
    # 再通过遍历将所有的docx合并
    doclist = os.listdir(workdir)
    doc=Composer(docx.Document())
    for index, file in enumerate(doclist):
        if file.endswith(\'.docx\'):
            sub_doc=docx.Document(os.path.join(workdir,file))
        if index <len(doclist)-1:
            sub_doc.add_page_break()
        doc.append(sub_doc)
    doc.save(os.path.join(workdir,'out.docx'))
    del doc
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    #python#办公自动化#文档合并
    上次更新: 2024/03/11, 23:50:27
    最近更新
    01
    如何挂载raw格式的虚拟机磁盘镜像
    12-18
    02
    《极简市场营销》读书笔记
    09-29
    03
    SNaQ进行系统发育网构建
    09-27
    更多文章>
    打赏我~
    主人忘记设置啦
    Copyright © 2019-2024 IvisTang | CC BY-SA 4.0 License
    沪ICP备20003858号-1 |
    已在风雨中度过
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式