Python办公自动化之将任意文件转为PDF格式

一、word转PDF

这里借助Python的docx2pdf去完成转换操作,该库的安装命令如下:

pip install docx2pdf

目标:读取文件夹下的全部word文件,然后进行转换,最后保存到对应的文件夹中。

这里辰哥新建两个word文件作为演示,打开其中一个word看看

里面不仅有文字,同时包含有图片

import os
from docx2pdf import convert
word_path = 'word_path'
word_to_pdf = 'word_to_pdf'
for i,j,name in os.walk(word_path):
    for word_name in name:
         convert(word_path+"/"+word_name, word_to_pdf+"/"+word_name.replace("docx","pdf"))

其中word_path是存放word文件的文件夹,word_to_pdf是转换后的pdf存放文件夹。

打开第一个pdf,内容如下:

可以看到文字、图片、以及排版****这些都与原文件(word)一模一样。

二、excel转PDF

这里需要使用到的库是comtypes,下面直接上案例。

上面的word转pdf已经教大家学会了从文件夹中读取全部的文件,所有这里同样的就不再赘述。

pip install pywin32

目标: 将excel文件转为PDF

这里辰哥新建一个excel文件作为演示

import os
from win32com.client import DispatchEx
excel_path = "D:/公众号/0626/Python研究者.xls"
pdf_path = "D:/公众号/0626/Python研究者.pdf"

xlApp = DispatchEx("Excel.Application")
xlApp.Visible = False
xlApp.DisplayAlerts = 0
books = xlApp.Workbooks.Open(excel_path,False)
books.ExportAsFixedFormat(0, pdf_path)
books.Close(False)
xlApp.Quit()

运行之后生成pdf文件

打开pdf

可以看到excel中的数据已经全部转为PDF格式。

三、ppt转PDF

这里需要使用到的库是comtypes,下面直接上案例。

上面的word转pdf已经教大家学会了从文件夹中读取全部的文件,所有这里同样的就不再赘述。

目标:ppt转为pdf

这个是辰哥之前做分享时弄的一个ppt,咱们就以这个ppt为例

import comtypes.client
import os
def ppt_to_pdf():
    #设置路径
    input_file_path=os.path.abspath("Python学习规划路线.pptx")
    output_file_path=os.path.abspath("Python学习规划路线.pdf")
    #创建PDF
    powerpoint=comtypes.client.CreateObject("Powerpoint.Application")
    powerpoint.Visible=1
    slides=powerpoint.Presentations.Open(input_file_path)
    #保存PDF
    slides.SaveAs(output_file_path,32)
    slides.Close()

这里将会ppt:Python学习规划路线.pptx转为Python学习规划路线.pdf

打开pdf其内容如下:

四、小结

本文基本就成功实现目标要求,从效果来看还是非常不错的!完整源码可由文中代码组合而成(已全部分享在文中),感兴趣的读者可以自己尝试!

到此这篇关于教你如何用Python自动将任意文件转为PDF格式的文章就介绍到这了,更多相关Python文件转为PDF内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Python办公自动化之教你用Python批量识别发票并录入到Excel表格中

    一.场景描述 这里有以四张发票为例(辰哥网上搜的),将发票图片放到pic文件夹下. 随便打开一张发票 提取目标:金额.名称.纳税人识别号.开票人. 最后将每一张发票的这四个内容保存到excel中: 二.准备环境 需要用到的库如下: from PIL import Image as PI import pyocr import pyocr.builders from cnocr import CnOcr 安装的命令如下: pip install pyocr pip install cnocr 发票

  • 6个Python办公黑科技,助你提升工作效率

    目录 一.解析PDF(简历内推) 二.发送邮件 三.操作execl 1. 关联公式:Vlookup 2. 数据透视表 3. 对比两列差异 4. 去除重复值 5. 缺失值处理 6. 多条件筛选 7. 模糊筛选数据 8. 分类汇总 9. 条件计算 10. 删除数据间的空格 四.画图分析 五.解析word(docx.doc) 六.计算器 总结 一.解析PDF(简历内推) 应用场景:简历内推(解析内容:包括不限于姓名.邮箱.电话号码.学历等信息) 输入:要解析的文件路径 输出:需要解析的内容(点我主页,

  • Python办公自动化之Excel(中)

    准备 首先,我们需要安装依赖包 # 安装依赖包 pip3 install openpyxl 读取数据 使用 openpyxl 中的 load_workbook(filepath) 加载本地一个 Excel 文件,返回结果是一个工作簿对象 import openpyxl # 加载本地的Excel文件 wb = openpyxl.load_workbook(file_path) 利用工作簿对象,可以获取所有的 Sheet 名称及 Sheet 列表 def get_all_sheet_names(wb

  • python 办公自动化——基于pyqt5和openpyxl统计符合要求的名单

    首先,那肯定是用python获取学校发下来的未学习名单,但是我忘记我之前用什么来操作办公软件了(最后项目作出来的时候才想起来是pandas),我就上网搜了一下,试了很多库但是都不支持xlsx文件格式(只支持最老版本的xls),最终openpyxl成功的读取了xlsx文件,于是我就用了openpyxl库来读取文件,下面是python代码 studyedstudent = [] wb = load_workbook(xlsx_path) sheets = wb.worksheets # 获取当前所有

  • python实现自动化办公邮件合并功能

    经常使用word办公的小伙伴们经常会遇到邮件合并的任务,通常会将数量有限的表格中的信息通过word的邮件合并功能,自动生成word文档,操作熟练的技术员通常不到十分钟就可以合并几十份邮件.那么如果遇到成千上万份的邮件需要合并并且需要各自生成文件呢?一个excel大佬也需要很长时间吧!既然我们很难在excel上追上大佬的脚步,何不另辟蹊径,找一条更适合自己的方法呢? 我是一年多前接触到python自动化办公的,通过进一步的学习,发现平时我们的办公效率可以通过使用python的自动化办公方法从而进一

  • Python办公自动化之将任意文件转为PDF格式

    一.word转PDF 这里借助Python的docx2pdf去完成转换操作,该库的安装命令如下: pip install docx2pdf 目标:读取文件夹下的全部word文件,然后进行转换,最后保存到对应的文件夹中. 这里辰哥新建两个word文件作为演示,打开其中一个word看看 里面不仅有文字,同时包含有图片 import os from docx2pdf import convert word_path = 'word_path' word_to_pdf = 'word_to_pdf' f

  • Python办公自动化之教你如何用Python将任意文件转为PDF格式

    一.word转PDF 这里借助Python的docx2pdf去完成转换操作,该库的安装命令如下: pip install docx2pdf 目标:读取文件夹下的全部word文件,然后进行转换,最后保存到对应的文件夹中. 这里辰哥新建两个word文件作为演示,打开其中一个word看看 里面不仅有文字,同时包含有图片 import os from docx2pdf import convert word_path = 'word_path' word_to_pdf = 'word_to_pdf' f

  • Python爬取csnd文章并转为PDF文件

    目录 1.导入模块 2.创建文件夹 3.发送请求 4.数据解析 5.如果把列表里面每一个元素 都提取出来 6.替换特殊字符 7.转换成PDF文件 本篇文章流程(爬虫基本思路): 数据来源分析 (只有当你找到数据来源的时候, 才能通过代码实现) 确定需求(要爬取的内容是什么?)爬取CSDN文章内容 保存pdf 通过开发者工具进行抓包分析 分析数据从哪里来的? 代码实现过程: 发送请求 对于文章列表页面发送请求 获取数据 获取网页源代码 解析数据 文章的url 以及 文章标题 发送请求 对于文章详情

  • python实现csv格式文件转为asc格式文件的方法

    一.背景描述 csv格式文件是一种类似于excel的文件格式 asc格式文件是一种可以用text打开的文本文件 csv转asc本来可以用arcgis顺利完成,但由于csv数据量太大(744万行),arcgis处理不了如此大的文本,所以需要通过写代码实现(注:不是用python调用arcgis工具) 二.格式说明 Csv格式: asc图片 说明:第一列为id,第二列是值,第三第四列为值所在的行列号:csv的数据共744万行,直接打开无法全部加载 asc格式: 三.举例 需要的是将csv对应的某行某

  • Python办公自动化Word转Excel文件批量处理

    目录 前言 首先使用Python将Word文件导入 row和cell解析所需内容 内层解析循环 前言 大家好,今天有一个公务员的小伙伴委托我给他帮个忙,大概是有这样一份Word(由于涉及文件私密所以文中的具体内容已做修改) 一共有近2600条类似格式的表格细栏,每个栏目包括的信息有: 日期 发文单位 文号 标题 签收栏 需要提取其中加粗的这三项内容到Excel表格中存储,表格样式如下: 也就是需要将收文时间.文件标题.文号填到指定位置,同时需要将时间修改为标准格式,如果是完全手动复制和修改时间,

  • C#实现WPS文件转PDF格式的方法示例

    本文实例讲述了C#实现WPS文件转PDF格式的方法.分享给大家供大家参考,具体如下: 这里主要是采用C#将wps文件转为PDF.需要提前安装好WPS,并在程序中添加引用using Microsoft.Office.Interop.Word; 具体源码如下所示: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.IO; using Microsoft.O

  • Python实现批量将MP3音频转为WAV格式详解

    目录 前言 环境依赖 代码 验证一下 前言 本文提供批量将MP3格式的音频转为wav格式的工具代码,一如既往的实用主义. 环境依赖 ffmpeg环境安装,可以参考:windows ffmpeg安装部署 ffmpy安装: pip install ffmpy -i https://pypi.douban.com/simple 代码 不废话,上代码. #!/user/bin/env python # coding=utf-8 """ @project : batch-pro @au

  • R语言如何将大型Excel文件转为dta格式详解

    本文以2000年度我国工业企业数据库为例,该文件后缀名为xlsx,包含约16万条记录,文件有88M这么大.直接使用Excel打开都费劲:等待时间久,电脑风扇呼呼呼作响.如果尝试用Stata打开该xlsx文件,则会出现提示报错. 报错原因在于,Stata无法读取超过40M的Excel文件. 这就好比瓜迪奥拉的传控足球固然美丽,但是面对摆大巴的球队无能为力. 破大巴需要攻城锤,这把锤子的名字就是R语言.万事开头难啊,正憧憬着数据清洗和花式选取变量建模呢,可不能连数据们长啥模样都没见着啊.R语言适时挺

  • python使用pandas处理excel文件转为csv文件的方法示例

    由于客户提供的是excel文件,在使用时期望使用csv文件格式,且对某些字段内容需要做一些处理,如从某个字段中固定的几位抽取出来,独立作为一个字段等,下面记录下使用acaconda处理的过程: import pandas df = pandas.read_excel("/***/***.xlsx") df.columns = [内部为你给你的excel每一列自定义的名称](比如我给我的excel自定义列表为: ["url","productName&quo

  • Python实现网页文件转PDF文件和PNG图片的示例代码

    目录 一.html网页文件转pdf 二.html网页文件转png 一.html网页文件转pdf #将HTML文件导出为PDF def html_to_pdf(html_path,pdf_path='.\\pdf_new.pdf',html_encoding='UTF-8',path_wkpdf = r'.\Tools\wkhtmltopdf.exe'): ''' 将HTML文件导出为PDF :param html_path:str类型,目标HTML文件的路径,可以是一个路径,也可以是多个路径,以

随机推荐