Нужно "включить" PhantomJs в состав .exe-файла.
Генерирую через pyinstaller .spec файл для скрипта.
Потом добавляю туда Tree('phantomjs\\bin')
# -*- mode: python -*-
block_cipher = None
a = Analysis(['test_phantom.py'],
pathex=['D:\\python35_64'],
binaries=[],
datas=[],
hiddenimports=['queue'],
hookspath=[],
runtime_hooks=[],
excludes=[],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher)
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
a.binaries,
Tree('phantomjs\\bin'),
a.zipfiles,
a.datas,
name='test_phantom',
debug=False,
strip=False,
upx=True,
console=True )
В самом скрипте вызов идет вот так:
browser = webdriver.PhantomJS(('phantomjs\\bin\\phantomjs.exe'))
Как правильно прописать путь в скрипте и в файле .spec, чтобы на других ПК .ехе-файл запускался без проблем? Без доп.установки фантома и прописывания в Path.
Спасибо.