Конвертировать Python Script в exe и включить селен браузер - PullRequest
0 голосов
/ 05 декабря 2018

У меня проблемы при конвертации.Я попробовал: Auto py в exe - gui - я добавил chromedriver (1 файл) ||вся папка (site-packages \ chromedriver_binary). Я создал файл .spec и записал туда:

a = Analysis(['tk.py'],
binaries=[],
datas=[("chromedriver.exe",".")])

Но получил несколько ошибок:

Файл "c: \ python36_32 \ lib \site-packages \ PyInstaller \ building \ buildne 782, в сборке с открытым (spec, 'r') как f: FileNotFoundError: [Errno 2] Нет такого файла или каталога: 'tkk.spec'

У меня есть .spec, chromedriver и python скрипт в одной папке.

Когда я запускаю exe на Windows 7, я получаю что-то вроде этого: https://gyazo.com/0152ca0998e2e0895ff91c9cfb7db0c2 Я не имею понятия, как остановитьвид консоли для чтения ошибки

Можете ли вы сказать, что я делаю не так?

1 Ответ

0 голосов
/ 06 декабря 2018

Один из способов сохранить эту ошибку - запустить tk.exe через командную строку / терминал.В Windows это можно сделать, открыв cmd, изменив каталог на местоположение tk.exe и выполнив ./tk.exe, который запустит исполняемый файл и сохранит вывод для вас.

Из того, что я вижу(непонятно), вы получаете FileNotFoundError с надписью "Nie mozna odnalezc okreslonego pliku", которое, я считаю, The specified file can not be found на английском языке.Ниже селен выдает ошибку о том, что chromedriver.exe не может быть найден.

При просмотре предоставленного видео вы видите, что вы использовали режим одного файла.Если вы провели некоторое исследование связывания файлов с --onefile PyInstaller, то вы бы знали, что вам нужно будет указать селену конкретно, где находится chromedriver.exe.

Я не сделалэто сам но я считаю, что процесс будет выглядеть примерно так:

    from selenium import webdriver
    options = webdriver.ChromeOptions()
    options.binary_location = resource_path('.')
    driver = webdriver.Chrome(chrome_options=options)

Конечно, это не все, но это говорит Selen'у посмотреть во временный каталог scripts (из-за --onefile) для chromedriver.exe

Также в качестве краткого примечания вы сказали, что использовали auto-py-to-exe.При использовании этого инструмента он явно указывает на это при добавлении файлов и использовании --onefile.

...