标签:Python,auto-py-to-exe
通过将Python脚本转换为可执行文件,可以将其发送给需要的人,以便在他们的计算机上运行,即使他们没有安装Python。
我们可以使用pyinstaller通过命令行来创建Python脚本的可执行程序,然而,如果有一个生成可执行文件的图形用户界面,岂不更酷。
auto-py-to-exe是一个使用图形用户界面将Python脚本转换为可执行文件的简洁工具,非常容易使用。
准备工作
1.在向其他人发送任何信息之前,确保删除id和密码。
2.最好对项目使用虚拟环境,这样Pyinstaller就可以使用最少的库。确保虚拟环境中安装了所有必需的库。如何设置虚拟环境请参见:>>>如何使用虚拟环境和Jupyter Notebook。
在命令行中输入:
pipinstall auto-py-to-exe
安装完成后,在命令行中输入:
auto-py-to-exe
打开如下图1所示的程序:
图1
这个模块本质上是pyinstaller库的GUI包装,如图1所示程序界面的当前命令部分。
步骤1:选择Python脚本
选择要转换成可执行文件的Python脚本。
步骤2:选择一个文件或一个目录格式
可以选择是将脚本转换为目录还是单个文件。
如果要将脚本转换为一个文件,就不必处理目录中的许多文件。此时,要选择“一个文件”选项。
步骤3:选择输出文件夹
转换后,我们需要在输出目录中找到应用程序文件。默认情况下,应用程序名称与脚本名称相同。可以在程序的“Settings(设置)”部分中找到或更改输出目录。
步骤4:向应用程序添加其他文件
当我们将此应用程序提供给另一个人时,理想情况下,他们只需双击它,程序就会运行。因此,在我们的应用程序中包含任何必需的文件非常重要。由于我们的应用程序需要chromedriver,也将其添加到软件包中。在“附加文件”设置中,我们可以选择添加单个文件或文件夹。
当我们将“单文件”与“附加文件”选项一起使用时,需要稍微调整一下代码,否则最终的应用程序将无法工作。Pyinstaller将数据/文件解压到名为sys._MEIPASS的临时文件夹中。因此,必须指示代码从正确的位置拾取文件。我们将创建一个函数,为添加的文件包含适当的文件夹。
def file_path(relative_path):
try:
base_path= sys._MEIPASS
except Exception as e:
base_path= os.path.abspath(“.”)
returnos.path.join(base_path, relative_path)
## 对chromedriver.exe包括适当的文件夹地址
driver_path =file_path(r’chromedriver.exe’)
driver =webdriver.Chrome(driver_path, options=opt)
步骤5:向应用程序添加图标(可选)
如果喜欢给应用程序一个自定义图标,可以添加。
为应用程序添加图标,在图标部分,为此应用程序选择图标文件。注意图标必须是.ico文件格式。
通过以上步骤,我们可以将Python脚本转换为可执行文件。接下来只需单击“将.PY转换为.EXE”并等待它完成工作。
关于使用虚拟环境的警告
如果在虚拟环境中使用auto-py-to-exe,确保安装脚本所需的所有库。否则,最终的可执行文件将丢失库,并且不会运行。
检查可执行文件
有了可执行文件后,双击该文件运行,进行测试。