PySimpleGUI界面读取PDF转换Excel

PySimpleGUI 是一个用于创建图形用户界面的 Python 库,而 PDF 文件和 Excel 文件是两种不同的数据格式。要将 PDF 文件转换为 Excel 文件,你需要使用额外的库,如 pdf2excel

下面是一个示例流程,展示了如何使用 PySimpleGUI 创建一个界面,以便用户选择 PDF 文件并读取其中的数据,然后将其导入 Excel 文件:

  1. 安装所需的库


  

bash复制代码

pip install PySimpleGUI pdf2excel openpyxl
  1. 使用 PySimpleGUI 创建界面


  

python复制代码

import PySimpleGUI as sg
# 定义列和行布局
layout = [[sg.Column([[sg.Text("选择 PDF 文件:")], [sg.In(key='-IN-')]], pad=(0,0))],
[sg.Text("选择输出 Excel 文件:")],
[sg.In(key='-OUT-')],
[sg.Column([[sg.Text("开始转换")], [sg.FileBrowse(file_types=(("PDF files", "*.pdf"), ("All files", "*.*")))]])]
# 创建窗口布局
window = sg.Window("PDF to Excel Converter", layout, margins=(0,0), finalize=True)
# 事件循环
while True:
event, values = window.read()
if event == sg.WINDOW_CLOSED:
break
elif event == "-IN-":
input_file = values['-IN-']
elif event == "-OUT-":
output_file = values['-OUT-']
elif event == "FileSelected":
# 使用 pdf2excel 进行转换
pdf2excel(input_file, output_file)
sg.popup_error("转换完成!")
  1. 使用 pdf2excel 进行转换:请注意,pdf2excel 是一个独立的库,它负责实际的 PDF 到 Excel 的转换。你可能需要自己编写这部分逻辑,或者找到一个合适的库。如果 pdf2excel 不满足你的需求,你可能需要查找其他库或工具来完成这个任务。

  2. 保存 Excel 文件:在上述代码中,我们使用了 openpyxl 来保存 Excel 文件。你可以使用以下代码作为参考:


  

python复制代码

from openpyxl import Workbook
from openpyxl.utils import get_column_letter
def save_to_excel(data, filename):
wb = Workbook()
ws = wb.active
for r in data:
ws.append(r)
wb.save(filename)

在完整的程序中,你需要根据实际的 PDF 文件内容和格式来调整这个函数,使其能够正确地将数据保存到 Excel 文件中。
5. 处理异常和错误:在实际应用中,你应该添加异常处理逻辑,以便在转换过程中出现错误时给出清晰的错误消息。这可能涉及到捕获 pdf2excel 库可能抛出的任何异常。
6. 关闭窗口:在程序结束时,确保关闭 PySimpleGUI 窗口。你可以在 sg.Window 的 close 方法中添加适当的逻辑来处理这一点。
7. 测试和调试:在实际部署之前,确保对程序进行彻底的测试和调试,以确保其按预期工作。

相关推荐

  1. PySimpleGUI界面读取PDF转换Excel

    2024-01-30 12:54:02       36 阅读
  2. 【Python】Python 批量转换PDFExcel

    2024-01-30 12:54:02       30 阅读
  3. Excel转为PDFPDF添加图片

    2024-01-30 12:54:02       20 阅读
  4. Python 读取电子发票PDF 转成Excel

    2024-01-30 12:54:02       38 阅读
  5. python读取pdf表格并合并为excel

    2024-01-30 12:54:02       16 阅读
  6. EXCEL VBA 多sheet批量转转PDF

    2024-01-30 12:54:02       17 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-30 12:54:02       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-30 12:54:02       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-30 12:54:02       18 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-30 12:54:02       20 阅读

热门阅读

  1. 蓝桥杯-岛屿个数-bfs-dfs算法

    2024-01-30 12:54:02       34 阅读
  2. 华为HCIP Datacom H12-831 卷16

    2024-01-30 12:54:02       42 阅读
  3. 蓝桥杯---错误票据

    2024-01-30 12:54:02       33 阅读
  4. 糊涂工具包使用 记录

    2024-01-30 12:54:02       39 阅读
  5. 51单片机点灯

    2024-01-30 12:54:02       29 阅读
  6. Redis:企业级的深入

    2024-01-30 12:54:02       26 阅读
  7. C语言数据结构——单链表

    2024-01-30 12:54:02       45 阅读
  8. Redis -- 背景知识

    2024-01-30 12:54:02       39 阅读