批量转换word为pdf

自己写的一个小工具,用于批量转换word为pdf,使用方式:

将完整代码拷贝到文档中,并修改名称为words2pdfs.py
将该文件拷贝到需要转换的文档目录下
在终端中输入python words2pdfs.py
终端会列出来是否需要转换以下文档,输入yes即可。
注意:运行后会在当前目录下生成一个pdfs的文件夹,里面就是转换后的所有文件

import os,shutil
from win32com import client

def doc2pdf(doc_name, pdf_name):
    """
    :word文件转pdf
    :param doc_name word文件名称
    :param pdf_name 转换后pdf文件名称
    """
    try:
        word = client.DispatchEx("Word.Application")
        if os.path.exists(pdf_name):
            os.remove(pdf_name)
        worddoc = word.Documents.Open(doc_name,ReadOnly = 1)
        worddoc.SaveAs(pdf_name, FileFormat = 17)
        return pdf_name
    except Exception as e:
        print(e)
        return 1
    finally:
        worddoc.Close()
        word.Quit()

def doc2docx(doc_name,docx_name):
    """
    :doc转docx
    """
    try:
        # 首先将doc转换成docx
        word = client.Dispatch("Word.Application")
        doc = word.Documents.Open(doc_name)
        #使用参数16表示将doc转换成docx
        doc.SaveAs(docx_name,16)
    except:
        pass
    finally:
        doc.Close()
        word.Quit()

def createDirs(basePath=os.getcwd()):
    # 存放转化后的pdf文件夹
    pdfs_dir = basePath + ‘/pdfs‘
    if not os.path.exists(pdfs_dir):
        os.mkdir(pdfs_dir)
    return pdfs_dir

def getFileNames(basePath=os.getcwd()):
    filenames=[]
    # move all .words files to words_dir
    for file in os.listdir(basePath):
        if file.endswith(‘.docx‘):
            filenames.append(file)
        elif file.endswith(‘.doc‘):
            filenames.append(file)
        else:
            pass
    return filenames

def convert(basePath=os.getcwd(),filenames=[]):
    pdfs_dir=createDirs(basePath)
    for filename in filenames:
        pdfName=‘.‘.join(filename.split(‘.‘)[:-1])+‘.pdf‘
        doc2pdf(os.path.join(basePath,filename),os.path.join(pdfs_dir,pdfName))

if __name__ == ‘__main__‘:
    basePath=os.getcwd()
    lfileNames=getFileNames(basePath)
    print(‘are you going to convert these files to pdf?‘)
    for filename in lfileNames:
        print(filename)
    print("yes/no?")
    while True:
        command=input()
        if command==‘yes‘:
            convert(basePath,lfileNames)
            break
        elif command==‘no‘:
            break
        else:
            print(‘wrong command,input yes or no please‘)

---------------------
版权声明:本文为CSDN博主「Fantastic_Liar」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/Fantastic_Liar/article/details/90452928

原文地址:https://www.cnblogs.com/cangqinglang/p/11332548.html

时间: 2024-11-12 11:17:56

批量转换word为pdf的相关文章

如何批量把Word转PDF,Word转换PDF如何在线转换

随着PDF文件的流行,大多数的公司存放文件和资料都已习惯性的用PDF格式,毕竟PDF文件的不可编辑性以及其保密性深受大家喜欢,今天就来跟大家分享一下如何批量将word文件转换成PDF文件.操作步骤:第一步:打开电脑,进入浏览器,在百度首页搜索迅捷PDF在线转换器.第二步:进入转换器首页后,在导航栏内点开文档转换,在下拉框内选择Word转PDF.第三步:打开Word转PDF后,点击选择文件,在弹出的窗口里加入待转换的Word文件.第四步:将提前准备好的Word文档添加好后,设置需要转换的页码等参数

markdown文本转换word,pdf

pandoc及下载和安装 pandoc是什么 pandoc是一个软件,是一个能把千奇百怪的文档格式互相转换的神器,是一把文档转换的瑞士军刀(swiss-army knife).不多说,放一张其官网(http://www.pandoc.org) 下载pandoc 下面以下载Windows下的pandoc为例: 官网下载链接:https://github.com/jgm/pandoc/releases/tag/2.2 根据自己的操作系统位数下载合适的msi安装包,我下载的是:pandoc-2.2-w

批量转换word文档到pdf文件

最近在整理每周的工作记录.因为每周的工作记录大都是单独的word文件,有时候忘记了也不容易找出来,一个个打开查找太费劲,因此想着把这些文件通过word2016的另存为功能转换为pdf,然后永Acrobat合并起来. 思路如下: (1)通过Python代码搜索指定输入目录下的所有word文档,调用word COM接口,将文件转存为pdf文件到指定输出目录: (2)利用Acrobat将输出的目录中所有的pdf合并成单个pdf文件供存档查阅. 步骤(1)的代码如下: 1 import os 2 #im

Java转换Word文件到PDF文件

使用Docx4j将Word文件转换为PDF文件: public static void convertDocxToPDF(String docxFilePath, String pdfPath) throws Exception { OutputStream os = null; try { // 加载文件 File docx = new File(docxFilePath); InputStream is = new FileInputStream(docx); WordprocessingM

怎么将Word文档转PDF?Word转PDF的技巧

Word格式文件在打印的时候,可能会出现一些比如说排版错误,等等的问题.解决的方法最好是将Word格式转换成PDF格式.批量转换也是一个方法,那么今天分享给大家如何批量将Word转PDF吧.方法一:工具转换 操作步骤:第一步:打开Word转PDF转换器,然后选择功能为[PDF转换]-[其他转PDF]-[Word转PDF]功能.第二步:添加Word文件到工具当中,添加的方法可以是点击添加也可以是拖拽添加,文件数量较多建议使用拖拽添加.第三步:添加好文件之后就是转换的设置了,转换页数在[全部]按钮下

Word怎么转换成pdf?Word批量转换成pdf教程

Word文档是我们生活中常见且经常使用的文本格式,在使用Word文档时,多数情况下会涉及到转换的问题,很多人希望将Word转换成PDF文件使用.但对于Word怎么转换成PDF却是众说纷纭的,几乎是每一个人都能列举出一种方法.    很多人说Word转换成PDF文件很简单,但是当我们花费很长时间将Word转换成PDF文件后,却发现乱码一片,这种现象主要是因为Word文档中含有特殊字符,而PDF文件却没同样的字符.就好比Word文件中有繁体字,而PDF文件中显示不出繁体,这时候,乱码是必然的. 当转

怎么将pdf转换成word 批量转换怎么转

如果只是需要临时进行PDF转WORD格式,那么只需要借助一些在线PDF转换工具就能实现.但转换的文件数量较多,例如每次都需要转换几十份.几百.甚至几千份的PDF文件时我们就要放弃在线转换的方法,寻找可以批量转换的方法,那么PDF怎么批量转换成WORD呢? 想要将pdf转换成word格式首先要准备一个pdf转换工具,打开任意浏览器,输入pdf转换器就能找到: 安装好之后打开迅捷pdf转换器找到要转换的文件格式单击: 接着将要转换的文件添加进来,添加方法是:点击添加文件按钮,找到待转换文件的存储位置

转换Word headings、元数据、超链接等元素为等同的PDF元素控件activePDF DocConverter

activePDF DocConverter使你能够很容易地扩展PDF转换功能到你的网内的每个用户,在安装了产品之后,简单地配置转换器扫描到的文件夹,用户就可以开始通过直观的拖拉操作进行文件转换了. 具体功能: 拖拉转换PDF: 控件通过目录扫描进行即时的批量转换,只需要在网络上定义一个监视文件夹用于DocConverter进行扫描,最终用户只需要从他们的桌面上把需要转换的文件直接拖到这个文件夹内,控件就会自动转换该文件为PDF了.并且放置转换好的文件到输出文件夹. 转换流行的Office文件格

图片批量转换成pdf

生活中,大家经常会拍摄一些照片用来留念,然而时间长了,经常会因为照片多而杂乱而懒于翻看,那么你是否考虑做一个电子相册,或制作一本PDF格式的书籍来翻看呢?菜鸟的这款 JPG转换成PDF转换器,快又好,分享给大家. 网上大部分的PDF转换软件并不能有效完成JPG转PDF,有的甚至频繁地出现转换失败.识别不准确等问题,这直接影响了我们工作和学习的进度,因而在选择JPG转PDF转换器的问题上,很多用户都不知从何下手,其实,专业可靠的JPG转换PDF转换器应该如何选择,更需要深入地对PDF转换工具进行分