@marlen
Чтобы запустить Selenium (Chrome) на Heroku, вам нужно выполнить следующие шаги:
- Создайте новое приложение на Heroku и установите браузер Chrome на сервер. Для этого вы можете использовать библиотеку Heroku Buildpacks:
1
|
heroku buildpacks:add heroku/google-chrome
|
- Установите необходимые зависимости для запуска Selenium (Python) на сервере. Добавьте следующие строки в файл requirements.txt в корневой папке вашего приложения:
1
2
|
selenium
chromedriver-binary~=92.0
|
- Создайте файл Procfile в корневой папке вашего приложения и добавьте следующую строку:
1
|
web: python your_script.py
|
где your_script.py
- это имя вашего Python-скрипта, в котором вы будете использовать Selenium.
- Ваш Python-скрипт должен содержать следующий код для настройки окружения Selenium:
1
2
3
4
5
6
7
8
9
10
11
12
13
|
from selenium import webdriver
from selenium.webdriver.chrome.options import Options
import os
chrome_bin = os.environ.get('GOOGLE_CHROME_BIN', None)
chrome_options = Options()
chrome_options.binary_location = chrome_bin
# если вы используете chromedriver, то добавьте этот код.
# chromedriver_path = os.environ.get('CHROMEDRIVER_PATH', 'chromedriver')
# driver = webdriver.Chrome(executable_path=chromedriver_path, chrome_options=chrome_options)
driver = webdriver.Chrome(chrome_options=chrome_options)
|
- Деплойте ваше приложение на Heroku:
1
2
3
4
|
git add .
git commit -m "Initial commit"
heroku create
git push heroku master
|
- После того, как ваше приложение успешно развернулось на Heroku, вам нужно определить переменные окружения, которые будут использоваться в вашем скрипте для запуска Selenium. Для Google Chrome вы должны определить переменную GOOGLE_CHROME_BIN:
1
|
heroku config:set GOOGLE_CHROME_BIN=/app/.apt/usr/bin/google-chrome
|
- Перезапустите ваше приложение на Heroku:
После выполнения этих шагов вы можете использовать Selenium (Chrome) на Heroku.