我编写了一个 python 脚本来读取当前文件夹(共享磁盘内)中的 pdfs 文件以查找特定编号,然后在其他文件夹(同一共享磁盘)中搜索该编号。如果匹配,使用 PyMuPDF 我将两个文件合并到一个新文件中。之后,将该文件移动到其他文件夹。问题是我需要在我的工作笔记本中,在共享磁盘中进行。(该磁盘中没有安装python)。我只在笔记本的 c:\user 中安装了 Anaconda。因此,使用 jupyter notebook 脚本运行完美,但是当我将其转换为 exe 文件(使用 pyinstaller)时,它不再工作,在我的 C 盘中也没有共享磁盘。我需要一个 exe 文件来在共享磁盘中执行该脚本。
我的脚本如下
import fitz
import os
import shutil
from tkinter import *
from tkinter import messagebox
archis = os.listdir()
archivos = os.listdir("N:\\...\\DJVE 2021")
window = Tk()
window.eval('tk::PlaceWindow %s center' % window.winfo_toplevel())
window.withdraw()
dejotas = 0
cant_veps = 0
unir_djs = messagebox.askquestion("Pregunta","Desea unir los Veps a las DJVE?")
if unir_djs == "yes":
try:
for files in archis:
files_splited = files.split(".")
if files_splited[1] == "pdf":
raw_file = fitz.open(files)
for pageNumber, page in enumerate(raw_file.pages(), start = 1):
text = page.getText()
try:
for files_dj in archivos:
if files_dj[0:15] in text:
file_dj = fitz.open("N:\\....\\DJVE 2021\\" + files_dj)
raw_file.insertPDF(file_dj, start_at=0)
raw_file.save(files_dj)
file_dj.close()
raw_file.close()
shutil.move(files_dj, "N:\\...\\DJVE 2021\\Djve con veps")
dejotas += 1
cant_veps += 1
except:
messagebox.showerror("Error","Problema con el archivo de djve.")
except:
messagebox.showerror("Error","Problema con el archivo de veps.")
else:
messagebox.showinfo("Informacion","No se ejecuto ninguna tarea.")
if unir_djs == "yes":
messagebox.showinfo("Informacion",f"Numero de DJVE procesadas {dejotas}")
messagebox.showinfo("Informacion",f"Favor borrar los {len(lista_veps)} veps de esta carpeta.\nGracias. ")
window.deiconify()
window.destroy()
window.quit()
谢谢!