首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么PDFPlumber不使用PysimpleGUI?

为什么PDFPlumber不使用PysimpleGUI?
EN

Stack Overflow用户
提问于 2020-12-25 07:19:23
回答 1查看 56关注 0票数 0

目前,python源文件没有遇到任何编译错误,但它没有执行将数据从pdf表转换为csv文件的后端进程。以下是我的源代码:

代码语言:javascript
复制
sg.theme('Dark Blue 3')  # please make your creations colorful

layout = [  [sg.Text('Select a PDF FILE')],
            [sg.Input(), sg.FileBrowse(file_types=(("pdf file", "*.pdf"),))],
            [sg.Text('Save a CSV filename')],
            [sg.Input(), sg.FileSaveAs(file_types=(("csv file", "*.csv"),))], 
            [sg.OK(), sg.Cancel()]] 

window = sg.Window('PDF TO CSV FILE EXTRACTION', layout)

event, values = window.read()

if event == "OK" and len(values[0])!= 0 and len(values[1]) != 0:
    outfile = open(values[1], 'w')
    outcsv = csv.writer(outfile)

    with pdfplumber.open(values[0]) as pdf:
        first_page = pdf.pages[0]
        table = first_page.extract_table()
        for row in table[0:]:
            outcsv.writerow(row)
        outfile.close
    
    sg.popup('CONVERSION COMPLETED, Exit program')
    loop = True
    

elif event == "Cancel":

    sg.popup('OPERATION TERMINATED')
    break

elif len(values[0])== 0 or len(values[1]) == 0:

    sg.popup_error('INPUT IS MISSING, TERMINATING PROGRAM. CONTACT YOUR SYSTEM ADMINISTRATOR.')
    loop = True    

else: 
    sg.popup_error('UNKNOWN INPUT, TERMINATING PROGRAM. CONTACT YOUR SYSTEM ADMINISTRATOR.')
    break



window.close()
EN

回答 1

Stack Overflow用户

发布于 2020-12-25 08:40:17

它确实执行后端进程,并做所有的事情。唯一的问题是您没有关闭csv文件。

错误的陈述

代码语言:javascript
复制
outfile.close

正确的一个

代码语言:javascript
复制
outfile.close()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65443979

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档