Python GUI2Exe Application Standalone Build(使用Py2Exe)

时间:2015-11-12 23:07:19

标签: python selenium py2exe gui2exe python-standalone

我正在尝试将Python脚本构建到独立的应用程序中。我正在使用GUI2Exe。我的脚本使用selenium包。我安装了它。 项目编译很好并直接在python命令行上运行,但由于它指的是文件夹而无法构建一个独立的站点:

 ERROR: test_file_data_extract (__main__.FileDataExtract)
 ----------------------------------------------------------------------
 Traceback (most recent call last):
 File "File_data_extract.py", line 18, in setUp
  File "selenium\webdriver\firefox\firefox_profile.pyc", line 63, in     __init__
 IOError: [Errno 2] No such file or directory: 'C:\\users\\username\\PycharmProjects\\Python_27_32bit\\file_data_extract\\dist\\File_data_extract.exe\\selenium\\webdriver\\firefox\\webdriver_prefs.json'

寻找硒包位于: C:\ Users \用户名\ Anaconda2_Py27_32bit \ LIB \站点包\硒 - 2.48.0-py2.7.egg \硒\的webdriver \火狐

其中C:\ Users \ username \ Anaconda2_Py27_32bit是我安装Anaconda Python 2.7,32位版本的地方。默认情况下,它在\ dist \ filename.exe文件夹中查找。

1 个答案:

答案 0 :(得分:0)

我能够使用bbfreeze构建它。它很棒。

首先,我必须通过pip安装bbfreezee(仅限一次):

pip install bbfreeze

将build_package.py文件创建为:

from bbfreeze import Freezer
f = Freezer("project_name", includes=("selenium","SendKeys",)) #list problem packages here to manually include
f.addScript("project_name_script.py")
f()    # starts the freezing process

构建项目:

python build_package.py bdist_bbfreezee

在project_name中的project_name_script.py所在的文件夹中找到project_name_script.exe,其中包含所有包含selenium和sendkeys的包。分发程序包时,需要分发整个project_name,因为它包含所有依赖库dll(python .pyd)。

更多细节请参考官方bbfreezee: https://pypi.python.org/pypi/bbfreeze/#downloads