Я пытаюсь упаковать свое приложение с помощью pyinstaller, чтобы другие люди могли использовать его, не загружая все дополнительные файлы и т. Д. В настоящее время мой сценарий запускает хроматический драйвер selenium со следующим кодом:
import os, inspect
current_folder = os.path.realpath(os.path.abspath(os.path.split(inspect.getfile(inspect.currentframe() ))[0]))
chromedriver = os.path.join(current_folder, "chromedriver")
browser = webdriver.Chrome(chromedriver, options=chrome_options )
Я создаю файл спецификации с кодом:
pyi-makespec --onefile check_in_final.py
Затем я редактирую двоичные файлы в файле спецификации:
binaries=[('/Users/Vetle/Python/Scripts/Wiredelta_Timer/Final/chromedriver', '.')],
Затем я создаю файл с помощью:
pyinstaller check_in_final.spec
И получите сообщение об ошибке при попытке запустить мое недавно созданное упакованное приложение:
Traceback (most recent call last):
File "site-packages/selenium/webdriver/common/service.py", line 76, in start
File "subprocess.py", line 769, in __init__
File "subprocess.py", line 1516, in _execute_child
FileNotFoundError: [Errno 2] No such file or directory: '/Users/Vetle/chromedriver': '/Users/Vetle/chromedriver'
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "check_in_final.py", line 248, in <module>
File "check_in_final.py", line 223, in login_timer
File "site-packages/selenium/webdriver/chrome/webdriver.py", line 73, in __init__
File "site-packages/selenium/webdriver/common/service.py", line 83, in start
selenium.common.exceptions.WebDriverException: Message: 'chromedriver' executable needs to be in PATH. Please see https://sites.google.com/a/chromium.org/chromedriver/home
[21745] Failed to execute script check_in_final
Я попытался поместить файл chromedriver в мою домашнюю папку, и это работает.Однако я не хочу, чтобы файлы там хранились, то же самое происходит с текстовыми файлами в моем приложении - каким-либо образом я могу сохранить их в файле приложения или создать новую папку в каталоге?