|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 18305177067 于 2023-2-16 15:53 编辑
py文件中代码为
- import tkinter.filedialog as tf
- import ttkbootstrap as ttk
- from ttkbootstrap.constants import *
- from ttkbootstrap.dialogs import Messagebox as msgbox
- from pdf2docx import Converter
- from docx2pdf import convert
- import os
- def pdf_to_words():
- folder = tf.askdirectory(title='选择文件夹')
- try:
- for file in os.listdir(folder):
- suff_name = os.path.splitext(file)[1] # 分离出扩展名
- if suff_name != '.pdf': # 如果不是PDF文档就退出
- continue
- file_name = os.path.splitext(file)[0] # 分离出文件名
- pdf_file = folder + '\\' + file
- word_file = folder + '\\' + file_name + '.docx' # 进行转义并加上扩展名
- cv = Converter(pdf_file) # 转成Word
- cv.convert(word_file)
- cv.close()
- msgbox.show_info('转换成功!')
- except FileNotFoundError:
- msgbox.show_error('你没有选择任何文件夹!')
- def pdf_to_word():
- try:
- pdffile = tf.askopenfilename(title='选择PDF文档') # 选择文件
- wordfile = os.path.splitext(pdffile)[0] + '.docx'
- cv = Converter(pdffile)
- cv.convert(wordfile)
- cv.close()
- msgbox.show_info('转换成功!')
- except FileNotFoundError:
- msgbox.show_error('你没有选择任何文件!')
- def word_to_pdf():
- try:
- inputfile = tf.askopenfilename(title='选择docx文档')
- outputfile = os.path.splitext(inputfile)[0] + '.pdf'
- f1 = open(outputfile, 'w')
- f1.close()
- convert(inputfile, outputfile)
- msgbox.show_info('转换成功!')
- except FileNotFoundError:
- msgbox.show_error('你没有选择任何文件!')
- def about():
- msgbox.show_info(message='版本号:v2.0\n制作者:鱼C论坛 liuhongrun2022')
- root = ttk.Window()
- root.title('PDF_to_Word2.0')
- root.geometry('900x100')
- b1 = ttk.Button(root, text="pdf批量转word", bootstyle='info-outline', command=pdf_to_words)
- b1.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- b2 = ttk.Button(root, text='pdf单文件转word', bootstyle='warning-outline', command=pdf_to_word)
- b2.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- b5 = ttk.Button(root, text='word转pdf',bootstyle='info-outline', command=word_to_pdf)
- b5.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- b3 = ttk.Button(root, text='关于', bootstyle='success-outline', command=about)
- b3.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- b4 = ttk.Button(root, text='退出',bootstyle='danger-outline', command=exit)
- b4.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- l = ttk.Label(root, bootstyle='inverse-warning', text='转换中出现"未响应"为正常现象。')
- l.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- l.configure(font=('微软雅黑 Light',9))
- root.mainloop()
复制代码
在编辑器中可以运行!!!
请求大佬帮助!!!
这个 exit 是终端才有的内置函数,可能图形界面没有,你换成 root.destroy 吧
对代码修改如下:
- import tkinter.filedialog as tf
- import ttkbootstrap as ttk
- from ttkbootstrap.constants import *
- from ttkbootstrap.dialogs import Messagebox as msgbox
- from pdf2docx import Converter
- from docx2pdf import convert
- import os
- def pdf_to_words():
- folder = tf.askdirectory(title='选择文件夹')
- try:
- for file in os.listdir(folder):
- suff_name = os.path.splitext(file)[1] # 分离出扩展名
- if suff_name != '.pdf': # 如果不是PDF文档就退出
- continue
- file_name = os.path.splitext(file)[0] # 分离出文件名
- pdf_file = folder + '\\' + file
- word_file = folder + '\\' + file_name + '.docx' # 进行转义并加上扩展名
- cv = Converter(pdf_file) # 转成Word
- cv.convert(word_file)
- cv.close()
- msgbox.show_info('转换成功!')
- except FileNotFoundError:
- msgbox.show_error('你没有选择任何文件夹!')
- def pdf_to_word():
- try:
- pdffile = tf.askopenfilename(title='选择PDF文档') # 选择文件
- wordfile = os.path.splitext(pdffile)[0] + '.docx'
- cv = Converter(pdffile)
- cv.convert(wordfile)
- cv.close()
- msgbox.show_info('转换成功!')
- except FileNotFoundError:
- msgbox.show_error('你没有选择任何文件!')
- def word_to_pdf():
- try:
- inputfile = tf.askopenfilename(title='选择docx文档')
- outputfile = os.path.splitext(inputfile)[0] + '.pdf'
- f1 = open(outputfile, 'w')
- f1.close()
- convert(inputfile, outputfile)
- msgbox.show_info('转换成功!')
- except FileNotFoundError:
- msgbox.show_error('你没有选择任何文件!')
- def about():
- msgbox.show_info(message='版本号:v2.0\n制作者:鱼C论坛 liuhongrun2022')
- root = ttk.Window()
- root.title('PDF_to_Word2.0')
- root.geometry('900x100')
- b1 = ttk.Button(root, text="pdf批量转word", bootstyle='info-outline', command=pdf_to_words)
- b1.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- b2 = ttk.Button(root, text='pdf单文件转word', bootstyle='warning-outline', command=pdf_to_word)
- b2.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- b5 = ttk.Button(root, text='word转pdf',bootstyle='info-outline', command=word_to_pdf)
- b5.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- b3 = ttk.Button(root, text='关于', bootstyle='success-outline', command=about)
- b3.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- b4 = ttk.Button(root, text='退出',bootstyle='danger-outline', command=root.destroy) # 改了这行
- b4.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- l = ttk.Label(root, bootstyle='inverse-warning', text='转换中出现"未响应"为正常现象。')
- l.pack(side=LEFT, padx=5, pady=5, fill=BOTH)
- l.configure(font=('微软雅黑 Light',9))
- root.mainloop()
复制代码
|
-
|