我正在尝试将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文件夹中查找。
答案 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