我尝试从使用pdfminer模块的脚本中使用pyinstaller(在Python 3.6中)创建exe文件,但创建的exe文件很大,大约240 MB 。相比之下,在Python 2.7中使用pyinstaller和类似的脚本时,创建的exe文件大约只有10 MB。
我做错了什么?
我使用以下命令创建exe文件: pyinstaller.exe --onefile {文件名/路径}
我的代码:
from pdfminer.pdfinterp import PDFResourceManager, PDFPageInterpreter
from pdfminer.converter import TextConverter
from pdfminer.layout import LAParams
from pdfminer.pdfpage import PDFPage
...
def convert_pdf_to_txt(path):
rsrcmgr = PDFResourceManager()
retstr = io.StringIO()
#codec = 'windows-1250'
laparams = LAParams()
device = TextConverter(rsrcmgr, retstr, laparams=laparams)
fp = open(path, 'rb')
# reply = s.get(path, stream=True, verify= False)
# fp = StringIO()
# fp.write(reply.content)
# fp.seek(0)
interpreter = PDFPageInterpreter(rsrcmgr, device)
password = ""
maxpages = 0
caching = True
pagenos = set()
for page in PDFPage.get_pages(fp, pagenos, maxpages=maxpages, password=password, caching=caching, check_extractable=True):
interpreter.process_page(page)
text = retstr.getvalue()
fp.close()
device.close()
retstr.close()
return text
...
答案 0 :(得分:0)
我找到了以下解决方案:
现在生成的exe文件只有7.8 MB。