Как я могу разместить бэкэнд-сервис, работающий на веб-скрепе, с помощью веб-драйвера selenium? - PullRequest
1 голос
/ 03 мая 2020

Поэтому я разрабатываю проект для очистки веб-сайта и доставки данных пользователям, однако я использую селен / селеновый драйвер с python / flask. Первоначально я собирался использовать beautifulsoup, но веб-сайт, который я собираю, требует некоторых взаимодействий на странице.

У меня все работает со скребком, я просто пытаюсь найти способ сделать эту работу универсальной, если бы я хотел разместить этот сервис на веб-сайте, используя сервис, такой как heroku.

В настоящее время Selenium открывает браузер chrome и таким образом просматривает страницы. Есть ли умный способ сделать это, не открывая браузер, и он будет работать без проблем при размещении на каком-либо сервисе?

Ответы [ 2 ]

1 голос
/ 10 мая 2020

Вы можете использовать аргумент "--headless" для своего драйвера.

Аргумент выполнит работу, но без открытия реального браузера.

пример:

chrome_options = Options()
chrome_options.add_argument("--headless")

driver = webdriver.Chrome(r"drivers/chromedriver.exe",options=chrome_options)
0 голосов
/ 10 мая 2020

Проверьте это руководство: https://youtu.be/Ven-pqwk3ec. Он показывает, как настроить селен на Heroku. Для вашего бэкэнда вы можете запустить скрипт в определенное время c с использованием сельдерея. Или, если вы хотите, чтобы он был вызван взаимодействием с пользователем, вы также можете использовать сельдерей для этого asyn c task

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...