Python办公自动化【Word转换PDF、PDF读取内容、PDF合并文件、PDF拆分文件、PDF加密文件、PPT基本操作-增加幻灯片、增加内容】(六)-全面详解(学习总结---从入门到深化)(上)

本文涉及的产品
密钥管理服务KMS,1000个密钥,100个凭据,1个月
简介: Python办公自动化【Word转换PDF、PDF读取内容、PDF合并文件、PDF拆分文件、PDF加密文件、PPT基本操作-增加幻灯片、增加内容】(六)-全面详解(学习总结---从入门到深化)

Python操作Word模块库文档



python文档 — python-docx 0.8.11 文档 (osgeo.cn)

python-docx — python-docx 0.8.11 documentation


Word转换PDF



使用office组件将word转换成PDF文件(缺点:只支持windows平台)


原理:使用python win32 库 调用word底层vba,将word转成pdf


安装


pip install pywin32


本地选装 office 套件,可以安装比较稳定的版本


常用方法与属性

函数名&属性&类  含义
win32com.client.gencache.EnsureDispatch()  设置word应用
ensureDispatch.Documents.Open(path)  读取数据
doc.ExportAsFixedFormat(pdfPath)  导出数据


代码

from win32com.client import gencache
from win32com.client import constants,gencache
def createPdf(wordPath, pdfPath):
  """
 word转pdf
 :param wordPath: word文件路径
 :param pdfPath: 生成pdf文件路径
 """
  word = gencache.EnsureDispatch('Word.Application')
  doc = word.Documents.Open(wordPath,ReadOnly=1)
  doc.ExportAsFixedFormat(pdfPath,
 constants.wdExportFormatPDF,
 Item=constants.wdExportDocumentWithMarkup,
 CreateBookmarks=constants.wdExportCreateHeadingBookmarks)
  word.Quit(constants.wdDoNotSaveChanges)
if __name__ == "__main__":
  # 路径填写绝对路径
  createPdf(
 r'D:\code\python\auto_code_word\base_data\原数据.docx',r'D:\code\python\auto_code_word\create_data
\10_word转换成pdf.pdf'
 )
  # 命令要安装pywin32模块,命令:pip install pywin32


PDF读取内容



安装

pip install pypdf2

pip install pdfplumber


常用方法与属性

函数名&属性&类  含义
PyPDF2.PdfFileReader(file)  读取PDF
pdf.getNumPages() 获取总页码
pdf.getPage(num)  获取第num页数据
page.extractText() 获取页面数据


代码

#pip install pypdf2
from PyPDF2 import PdfFileReader
def read_pdf1():
  # 打开文件
  with open('./base_data/10_word转换成pdf.pdf','rb') as f:
    # 将打开的文件传递给Reader对象
    reader = PdfFileReader(f)
    # 获取页面的总页数
    number = reader.getNumPages()
    print(number)
    # 获取单页
    page = reader.getPage(0)
    # 提取文本
    info = page.extractText()
    print(info)
# pip install pdfplumber
def read_pdf2():
  import pdfplumber
  # 打开文件
  with pdfplumber.open('./base_data/10_word转换成pdf.pdf') as f:
    # 获取数据
    print(f.pages)
    for p in f.pages:
      print(p.extract_text())
if __name__ =='__main__':
  # read_pdf1()
  read_pdf2()


PDF合并文件



在工作时,有时会碰到多个同类型内容的PDF文件,页码数又少,一个一个的打开又比较麻烦。这时应该如何处理呢?


这时就需要一个合并PDF的操作,而合并PDF操作的思路是:


1、读取源PDF文件

2、写入到一个新的PDF文件中


常用方法与属性

函数名&属性&类  含义
PyPDF2.PdfFileWriter()  创建一个pdf文件
write.addPage(page)  增加一页数据


代码

def merger_file(*m_path):
  from PyPDF2 import PdfFileReader,PdfFileWriter
  # 创建一个写入的对象
  writer = PdfFileWriter()
  # 读数据
  for path in m_path:
    # 创建reader
    reader = PdfFileReader(open(path,'rb'))
    # 读取页面数据
    for p in reader.pages:
      # 写新的pdf
      writer.addPage(p)
  # 保存
  with open('./create_data/02_合并pdf.pdf','wb') as f:
    writer.write(f)
if __name__ =='__main__':
  path = r'.\base_data\10_word转换成pdf.pdf'
  merger_file(path,path,path)


Python办公自动化【Word转换PDF、PDF读取内容、PDF合并文件、PDF拆分文件、PDF加密文件、PPT基本操作-增加幻灯片、增加内容】(六)-全面详解(学习总结---从入门到深化)(下):https://developer.aliyun.com/article/1420338

目录
相关文章
|
3月前
|
搜索推荐 Python
使用Python自动化生成物业通知单
本文介绍如何使用Python结合Pandas和python-docx库自动化生成物业通知单。通过读取Excel数据并填充至Word模板,实现高效准确的通知单批量制作。包括环境准备、代码解析及效果展示,适用于物业管理场景。
102 14
|
2天前
|
存储 安全 数据安全/隐私保护
Hyper V文件复制安全:加密与访问控制
在Hyper-V环境中,确保文件复制的安全性至关重要。主要措施包括:启用数据加密、使用HTTPS协议和磁盘加密技术(如BitLocker)保护数据传输和存储;通过身份验证、权限管理和审核日志控制访问;定期更新补丁、实施网络隔离及制定备份恢复策略。这些多层次的安全措施共同防止未经授权的访问和数据泄露,保障数据安全。
Hyper V文件复制安全:加密与访问控制
|
3月前
|
数据采集 数据可视化 数据挖掘
利用Python自动化处理Excel数据:从基础到进阶####
本文旨在为读者提供一个全面的指南,通过Python编程语言实现Excel数据的自动化处理。无论你是初学者还是有经验的开发者,本文都将帮助你掌握Pandas和openpyxl这两个强大的库,从而提升数据处理的效率和准确性。我们将从环境设置开始,逐步深入到数据读取、清洗、分析和可视化等各个环节,最终实现一个实际的自动化项目案例。 ####
436 10
|
3月前
|
Python
自动化微信朋友圈:Python脚本实现自动发布动态
本文介绍如何使用Python脚本自动化发布微信朋友圈动态,节省手动输入的时间。主要依赖`pyautogui`、`time`、`pyperclip`等库,通过模拟鼠标和键盘操作实现自动发布。代码涵盖打开微信、定位朋友圈、准备输入框、模拟打字等功能。虽然该方法能提高效率,但需注意可能违反微信使用条款,存在风险。定期更新脚本以适应微信界面变化也很重要。
270 61
|
8天前
|
机器学习/深度学习 设计模式 测试技术
Python 高级编程与实战:构建自动化测试框架
本文深入探讨了Python中的自动化测试框架,包括unittest、pytest和nose2,并通过实战项目帮助读者掌握这些技术。文中详细介绍了各框架的基本用法和示例代码,助力开发者快速验证代码正确性,减少手动测试工作量。学习资源推荐包括Python官方文档及Real Python等网站。
|
17天前
|
存储 数据采集 数据格式
Python自动化Office文档处理全攻略
本文介绍如何使用Python自动化处理Word、Excel和PDF文档,提升办公效率。通过安装`python-docx`、`openpyxl`、`pandas`、`PyPDF2`和`pdfplumber`等库,可以轻松实现读取、修改、创建和批量处理这些文档。具体包括:自动化处理Word文档(如读取、修改内容、调整样式),Excel文档(如读取、清洗、汇总数据),以及PDF文档(如提取文本和表格数据)。结合代码示例和实战案例,帮助你掌握高效办公技巧,减少手动操作的错误率。
41 1
|
2月前
|
机器学习/深度学习 运维 数据可视化
Python时间序列分析:使用TSFresh进行自动化特征提取
TSFresh 是一个专门用于时间序列数据特征自动提取的框架,支持分类、回归和异常检测等机器学习任务。它通过自动化特征工程流程,处理数百个统计特征(如均值、方差、自相关性等),并通过假设检验筛选显著特征,提升分析效率。TSFresh 支持单变量和多变量时间序列数据,能够与 scikit-learn 等库无缝集成,适用于大规模时间序列数据的特征提取与模型训练。其工作流程包括数据格式转换、特征提取和选择,并提供可视化工具帮助理解特征分布及与目标变量的关系。
110 16
Python时间序列分析:使用TSFresh进行自动化特征提取
|
2月前
|
存储 安全 数据可视化
用Python实现简单的任务自动化
本文介绍如何使用Python实现任务自动化,提高效率和准确性。通过三个实用案例展示:1. 使用`smtplib`和`schedule`库自动发送邮件提醒;2. 利用`shutil`和`os`库自动备份文件;3. 借助`requests`库自动下载网页内容。每个案例包含详细代码和解释,并附带注意事项。掌握这些技能有助于个人和企业优化流程、节约成本。
92 3
|
3月前
|
JSON 数据可视化 测试技术
python+requests接口自动化框架的实现
通过以上步骤,我们构建了一个基本的Python+Requests接口自动化测试框架。这个框架具有良好的扩展性,可以根据实际需求进行功能扩展和优化。它不仅能提高测试效率,还能保证接口的稳定性和可靠性,为软件质量提供有力保障。
141 7
|
3月前
|
安全 API 文件存储
Yagmail邮件发送库:如何用Python实现自动化邮件营销?
本文详细介绍了如何使用Yagmail库实现自动化邮件营销。Yagmail是一个简洁强大的Python库,能简化邮件发送流程,支持文本、HTML邮件及附件发送,适用于数字营销场景。文章涵盖了Yagmail的基本使用、高级功能、案例分析及最佳实践,帮助读者轻松上手。
117 4

热门文章

最新文章