如何在pyinstaller中包含chromedriver?

时间:2016-09-19 00:23:43

标签: python windows selenium selenium-chromedriver pyinstaller

我正在使用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不是模块... 感谢

1 个答案:

答案 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