ipatov_dn
@ipatov_dn

Как сконвертировать Python+Selenium+PhantomJS в exe?

C:\Users\1>"C:\Users\1\Desktop\не влезай убью\portSel.exe"
Traceback (most recent call last):
File "site-packages\selenium\webdriver\common\service.py", line 74, in start
File "subprocess.py", line 676, in __init__
File "subprocess.py", line 955, in _execute_child
FileNotFoundError: [WinError 2] Не удается найти указанный файл

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
File "portSel.py", line 6, in
File "site-packages\selenium\webdriver\phantomjs\webdriver.py", line 52, in __
init__
File "site-packages\selenium\webdriver\common\service.py", line 81, in start
selenium.common.exceptions.WebDriverException: Message: 'phantomjs' executable n
eeds to be in PATH.

Failed to execute script portSel
Exception ignored in: >
Traceback (most recent call last):
File "site-packages\selenium\webdriver\common\service.py", line 173, in __del_
_
File "site-packages\selenium\webdriver\common\service.py", line 145, in stop
AttributeError: 'Service' object has no attribute 'process'

суть в том как я понимаю отсутствует драйвер фантома но как сделать так чтобы конвертировать приложение и оно запускалось без лишних проблем на любой машине
  • Вопрос задан
  • 976 просмотров
Пригласить эксперта
Ответы на вопрос 3
chupasaurus
@chupasaurus
Сею рефлекторное, злое, временное
Каталог с phantomjs.exe должен быть в переменной среды PATH, остальное из-за этого собственно и отваливается.
Без предустановленных зависимостей приложение и не получится запустить на других машинах, если хотите сделать установку методом нажатия кнопки "Сделать мне хорошо" - создавайте msi-инсталлятор с установкой phantomjs, вашего приложения и прописывания всего куда надо.
Ответ написан
@WorldEn
Попробуй скачай этот драйвер и установи его как показано здесь (если у тебя ОС Windows).

Затем тебе могут пригодиться решения отсуда: раз, два

Затем тебе следует установить замечательный компилятор для Python (если у тебя Python 3 ) под названием Pyinstaller который, как правило, компилирует всё без проблем.

PS: и да, как сказано выше, этот драйвер надо будет устанавливать везде, где вы хотите запускать exe файл.
Чтобы этот драйвер автоматически устанавливался в PATH на другом компьютере, при запуске твоего exe файла, можно в py скрипте, перед компиляцией, прописать специальный код. Например я создавал приложение, и мне нужно было чтобы на компьютере, где я буду запускать exe файл своей программы, был предустановлен ffmpeg. Так вот я в скрипте прописал, чтобы при запуске программы ffmpeg автоматически скачивался с офф. сайта в нужную папку и распаковывался там (перед этим проверялось условие есть ли на диске ffmpeg), затем вызывался cmd от имени администратора, где уже пользователь сам прописывал куда установить утилиту. Конечно это не идеал, и возможно был более простой способ, чтобы у пользователя всё устанавливалось автоматически.
Ответ написан
@Envy10
Попробуй установить pyarmor, и через него pyarmor pack -e '--onefile' main.py
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы