heroku/python
https://github.com/heroku/heroku-buildp ... esting.git
https://github.com/heroku/heroku-buildp ... driver.git
Я также добавил следующие переменные среды:
GOOGLE_CHROME_BIN: /app/.apt/usr/bin/google-chrome
CHROMEDRIVER_PATH: /app/.chromedriver/bin/chromedriver
Однако, когда я пытаюсь выполнить сценарий Selenium, я сталкиваюсь со следующей ошибкой:< /p>
Код: Выделить всё
selenium.common.exceptions.SessionNotCreatedException: Message: session not created
from unknown error: no chrome binary at /app/.apt/usr/bin/google-chrome
Stacktrace:
#0 0x555ab0bf78fa
#1 0x555ab0708d20
...
Код: Выделить всё
from selenium import webdriver
from selenium.webdriver.chrome.service import Service
from selenium.webdriver.chrome.options import Options
import os
def _init_driver():
options = Options()
options.add_argument("--headless")
options.add_argument("--disable-gpu")
options.add_argument("--no-sandbox")
options.add_argument("--disable-dev-shm-usage")
options.add_argument("--window-size=1920,1080")
# Paths configured from Heroku environment variables
chrome_bin = os.environ.get("GOOGLE_CHROME_BIN", "/app/.apt/usr/bin/google-chrome")
chromedriver_bin = os.environ.get("CHROMEDRIVER_PATH", "/app/.chromedriver/bin/chromedriver")
options.binary_location = chrome_bin
service = Service(chromedriver_bin)
try:
driver = webdriver.Chrome(service=service, options=options)
return driver
except Exception as e:
print(f"Error initializing WebDriver: {e}")
raise e
Установил пакеты сборки Heroku-buildpack-chrome-for-testing и Heroku-buildpack-chromedriver.
Проверил, что переменные среды GOOGLE_CHROME_BIN и CHROMEDRIVER_PATH установлены правильно.
Проверил пути вручную в оболочке Heroku с помощью Heroku run bash и подтвердил, что существуют google-chrome и chromedriver.
Мой вопрос:
Почему WebDriver не может найти двоичный файл Chrome и как я могу исправить ошибку нет двоичного файла Chrome в /app/.apt/usr/bin/google-chrome на Heroku?
Сведения о среде:
Версия Python: 3.9Версия Selenium: 4.27.1
Стек Heroku: Heroku-24
Пакеты сборки:
heroku/python
https://github.com/heroku/heroku-buildp ... or-testing. git
https://github.com/heroku/heroku-buildp ... driver.git
Подробнее здесь: https://stackoverflow.com/questions/793 ... -binary-at