我正在使用pyinstaller来创建我的python脚本的可执行文件 在脚本中我使用了这些导入:
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
etc...
问题是,在运行pyinstaller myscript.py
时,会导致包含Firefox而不是Chrome。在结果文件夹c:... \ dist \ myscript \ selenium \ webdriver中有一个firefox文件夹,所以它只是跳过chromedriver,这对我来说是一个严重的问题,因为脚本需要与Chrome一起运行。 />
关于这个主题只有几个问题,但没有解决问题的答案
我正在考虑将--hidden-import MODULENAME
标记添加到命令中,但chromedriver.exe不是模块...
感谢
答案 0 :(得分:6)
它应该作为二进制文件添加,因为它是一个二进制文件...
因此,应该定义本地系统上的chromedriver路径和相对于dist \ myscript的所需位置的自定义spec文件,因此它看起来像这样:
.....
a = Analysis(['myscript.py'],
pathex=['path\\to\\my\\script'],
binaries=[ ('path\\to\\my\\chromedriver.exe', '.\\selenium\\webdriver') ],
datas=None,
....
然后使用此spec文件运行pyinstaller:pyinstaller myscript.spec myscript.py