码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • [Work Summary] Python将PDF转换成Word文档


    在我们平时的工作和日常生活中,有时候需要将PDF文件转换成Word文件。为此,决定使用Python自己实现将PDF转换成Word文档的功能需求

    编写如下程序代码(pdf2word.py):

    1. # python脚本文件pdf2word.py
    2. from pdf2docx import Converter
    3. import PySimpleGUI as sg
    4. def pdf2word(file_path):
    5. '''
    6. pdf转word函数
    7. '''
    8. file_name = file_path.split('.')[0]
    9. doc_file = f'{file_name}.docx'
    10. p2w = Converter(file_path)
    11. # 指定pdf从第0页开始转换到最后一页
    12. p2w.convert(doc_file, start=0, end=None)
    13. p2w.close()
    14. return doc_file
    15. def main():
    16. # 主函数,设计窗口
    17. # 设置窗口样式,选择主题
    18. sg.theme('BluePurple')
    19. layout = [
    20. [sg.Text('pdfToword', font=('微软雅黑', 12)),
    21. sg.Text('', key='filename', size=(50, 1), font=('微软雅黑', 10), text_color='blue')],
    22. [sg.Output(size=(80, 10), font=('微软雅黑', 10))],
    23. [sg.FilesBrowse('选择文件', key='file', target='filename'), sg.Button('开始转换'), sg.Button('退出')]]
    24. # 创建窗口
    25. window = sg.Window("PDF转换成Word文档", layout, font=("微软雅黑", 15), default_element_size=(50, 1))
    26. # 事件循环
    27. while True:
    28. # 窗口的读取,有两个返回值(1.事件;2.值)
    29. event, values = window.read()
    30. print(event, values)
    31. if event == "开始转换":
    32. if values['file'] and values['file'].split('.')[1] == 'pdf':
    33. filename = pdf2word(values['file'])
    34. print('文件个数 :1')
    35. print('\n' + '转换成功!' + '\n')
    36. print('文件保存位置:', filename)
    37. elif values['file'] and values['file'].split(';')[0].split('.')[1] == 'pdf':
    38. print('文件个数 :{}'.format(len(values['file'].split(';'))))
    39. for f in values['file'].split(';'):
    40. filename = pdf2word(f)
    41. print('\n' + '转换成功!' + '\n')
    42. print('文件保存位置:', filename)
    43. else:
    44. print('请选择pdf格式的文件哦!')
    45. if event in (None, '退出'):
    46. break
    47. window.close()
    48. main()

    呈现结果如下所示

    将该pdf文件转换成word文档

    点击【选择文件】按钮,弹出"打开"窗口,选择要转换的pdf文件并进行打开

    点击【开始转换】按钮

    转换成功

  • 相关阅读:
    集成驱动器LMG3411R150RWHR GaN FET(LMG3410R150RWHR)
    【Transformer从零开始代码实现】(一)输入部件:embedding+positionalEncoding
    CSS 实现航班起飞、飞行和降落动画
    一个useState学会React的主要思想
    圣杯布局和双飞翼布局
    Keras深度学习实战(11)——可视化神经网络中间层输出
    第二十三章 javascript请求方式Ajax
    少儿编程 电子学会图形化编程等级考试Scratch一级真题解析(选择题)2022年9月
    操作失误损失60亿美元,Excel还能是电脑上的常驻将军吗?
    Skywalking Swck Agent注入实现分析
  • 原文地址:https://blog.csdn.net/Hudas/article/details/126447905
  • 最新文章
  • 【JVM】编译执行与解释执行的区别是什么?JVM 使用哪种方式?
    用 Hashids 优雅解决 C 端自增 ID 暴露问题
    V8引擎 精品漫游指南--Ignition篇(上) 指令 栈帧 槽位 调用约定 内存布局 基础内容
    LLVM Pass快速入门(四):代码插桩
    milkup:桌面端 markdown AI续写和即时渲染
    基于项目工程构建SBOM(软件物料清单)的研究
    鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
    .NET 中如何快速实现 List 集合去重?
    扣子Coze实战:从0到1打造抖音+小红书热点监控智能体
    浅谈数据访问层
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号