Как правильно разместить Django + Selenium Scrapper на ubuntu или как разместить scrapper в облаке?

В общем, я столкнулся с проблемой, касающейся моего сайта на Django и selenium.

Моя функция Django содержит код selenium, чтобы пойти и соскрести детали, отправленные моим фронт-эндом. Это прекрасно работает на моем компьютере. Скребок должен работать до конца страницы, и обычно проходит несколько часов, прежде чем он достигает конца. По сути, он вызывает мою конечную точку API, которая начинает поиск и затем возвращает "готово" в качестве ответа. Теперь я хочу разместить его на сервере ubuntu на экземпляре AWS EC2. Что я и сделал, и все работает отлично. Но, как я уже сказал, скрап работает часами, и до конца страницы он ничего не возвращает в ответ, а запрос остается живым часами, что, как вы знаете, противоречит функции безопасности Nginx, и запрос умирает с ошибкой 503. Время по умолчанию для запроса Nginx составляет, я думаю, 30 секунд или что-то вроде того, но я пытался изменить его, но безуспешно. Есть ли другой способ размещения скрапперов? Этот скраппер будет использоваться одним человеком, но я думаю сделать его публичным, чтобы больше людей могли использовать его в будущем. Поэтому я хотел бы знать, как заставить его работать не только с одним пользователем, но и с несколькими. Хотя сначала я хотел бы знать, как я могу заставить его работать с 1 пользователем.

Технологический стек: Python Django(Selenium, BeautifulSoup4, Requests), Reactjs(Axios), Nginx, Gunicorn

Я очень благодарен вам за то, что вы дочитали до конца, и буду еще больше признателен за ваши отзывы и помощь. Спасибо за любую помощь!

Вернуться на верх