如何为PyInstaller可执行文件指定Python版本和库版本

How to specify Python version and library versions for PyInstaller executable(如何为PyInstaller可执行文件指定Python版本和库版本)
本文介绍了如何为PyInstaller可执行文件指定Python版本和库版本的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

使用PyInstaller创建可执行文件时,如何捆绑特定版本的特定Python解释器和某些库? 我想从我的.py脚本创建一个可执行文件。My__main__.py从网站下载一些数据并进行转换,然后将其保存在文件夹中作为EXCEL文件。

以下是要求。

  1. 使用Python3.6

为此,我找到了some related posts,但一直不清楚。我的main.py需要执行Python3.6,而此.exe文件的用户不一定拥有Python3.6,因此我还想将此Python捆绑到.exe文件中。但是,仅仅一个命令python3 -m pyinstaller __main__.py真的足够了吗?我没有信心,我想知道我到底需要做什么。

  1. 使用特定版本的库,如Pandas==0.23、BeautufulSoup4==4.9.1等。

我认为我需要在.spec文件中使用pure,因为the documentation表示脚本";所需的纯Python模块。但我找不到任何文档,说明我到底需要做什么才能让它包括 pandas ==0.23,美丽的南美==4.9.1等等。

如有任何帮助,我们将不胜感激!

推荐答案

我使用虚拟环境执行此操作:如果您的环境具有所需的Python版和包版本,则可以pip在那里安装PyInstaller并从该环境生成.exe。

Conda版本为:

  1. 创建环境:
conda create --name my_env_name python=3.6
  1. 激活:
conda activate my_env_name
  1. 安装所需的程序包版本和PyInstaller:
pip install pandas==0.23
pip install beautifulsoup4==4.9.1
pip install pyinstaller

# or to get the developer version, which fixes some issues I have run into
# pip install https://github.com/pyinstaller/pyinstaller/archive/develop.zip
  1. 然后构建您的EXE:
python pyinstaller myscript.py

拥有这个虚拟环境对于编写/测试您的程序也是一个很好的控制,因为它确保不需要其他依赖项。因此,我倾向于只将脚本所需的包安装到环境中。

但是,如果没有蟒蛇,我不确定如何使用venv做到这一点。但也许这仍然会给你指明一个方向(或者其他人可以详细说明?另请参阅this post)。

这篇关于如何为PyInstaller可执行文件指定Python版本和库版本的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!

本站部分内容来源互联网,如果有图片或者内容侵犯您的权益请联系我们删除!

相关文档推荐

Python app not working after using pyinstaller but doesn#39;t give any errors(使用pyinstaller后,Python应用程序无法运行,但未显示任何错误)
PyInstaller 2.1 import custom package(PyInstaller 2.1导入自定义包)
Getting a Runtime Error in Executable made with pyinstaller(在使用pyinstaller制作的可执行文件中出现运行时错误)
ImageIO ValueError in exe made by pyinstaller(由pyinstaller生成的exe中的ImageIO ValueError)
Best way to call subprocess scripts in a Python exe(在Pythonexe中调用子进程脚本的最佳方式)
Are python project dependencies are still required to be installed after compilation with PyInstaller?(在用PyInstaller编译后,是否仍然需要安装Python项目依赖项?)