簡體   English   中英

如何為 PyInstaller 可執行文件指定 Python 版本和庫版本

[英]How to specify Python version and library versions for PyInstaller executable

使用 PyInstaller 創建可執行文件時,如何捆綁特定的 Python 解釋器和特定版本的一些庫?

我想從 my.py 腳本創建一個可執行文件。 我的__main__.py從網站下載一些數據並進行轉換,然后將它們保存在一個文件夾中作為 excel 個文件。

這是要求。

  1. 使用 Python 3.6

為此,我找到了一些相關的帖子,但我從來都不清楚。 我的.py需要Python3.6才能執行,而這個.exe文件的用戶不一定有Python3.6,所以我想把這個Python也捆綁在.exe文件里。 但是僅僅一個命令python3 -m pyinstaller __main__.py真的足夠了嗎? 我沒有信心,我想知道我到底需要做什么。

  1. 使用特定版本的庫,如 pandas==0.23、beautifulsoup4==4.9.1 等。

我想我需要在.spec文件中使用pure ,因為文檔中說“pure:腳本需要的 pure python 模塊”。 但是我找不到任何關於我到底需要做什么的文檔,包括 pandas==0.23, beautifulsoup4==4.9.1 等。

任何幫助,將不勝感激!

我使用虛擬環境執行此操作:如果您的環境具有所需的 Python 版本和 package 版本,您可以pip在那里安裝 PyInstaller 並從該環境構建 .EXE。

Conda 版本將是:

  1. 創建環境:
conda create --name my_env_name python=3.6
  1. 激活它:
conda activate my_env_name
  1. 安裝所需的 package 版本和 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

擁有這個虛擬環境也可以很好地控制編寫/測試程序,因為它確保不需要其他依賴項。 因此,我傾向於只將腳本所需的包安裝到環境中。

但是,如果您沒有 Anaconda,我不確定如何使用venv執行此操作。但也許這仍會為您指明方向(或者其他人可以詳細說明?另請參閱這篇文章)。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM