控制PyInstaller的构建大小,包括pandas

2024-10-03 13:20:34 发布

您现在位置:Python中文网/ 问答频道 /正文

我想在使用pandas的windows10上构建单文件可执行文件。以下是我的单个文件脚本TrivialTest.py的全部内容:

import numpy as np
import pandas as pd
np.random.seed(456)
j = [(a, b) for a in ['A','B','C'] for b in pd.date_range('2018-01-01', periods=5, freq='W')]
i = pd.MultiIndex.from_tuples(j, names=['Name','Num'])
df = pd.DataFrame(np.random.randn(15), i, columns=['Vals'])
df.to_csv('Test.csv')

最初的PyInstaller构建,无论是--onefile还是--onedir,都会生成大小接近300MB的.exe文件。在

注意here声称在最小的python环境中运行PyInstaller可以在20MB以下获得一个独立的小pandas脚本.exe。在

This声称使用pyinstaller --onefile --exclude matplotlib --exclude scipy --exclude pandas --exclude numpy --exclude IPython --exclude django获得1到15MB。在

所以我运行了pyinstaller --onefile --exclude matplotlib --exclude scipy --exclude pandas --exclude numpy --exclude IPython --exclude django TrivialTest.py,但是结果{}仍然是237MB。在

如何将PyInstaller可执行文件缩减到合理的大小?在

例如:

  • 我有没有办法弄清楚PyInstaller在最后的.exe中放入了什么,我怀疑是否需要这样做,以便显式地排除它?如果答案与build\xref-trivialtest.html的内容有关,我想我会丢失:仅这个文件就超过2.5MB!在
  • 我可以从另一个方向工作吗:独立地确定需要什么,然后告诉PyInstaller只包含这些内容?在
  • 我只是“做错了吗?”在

Tags: 文件pyimportnumpy脚本可执行文件pandasas