@maximrabotaet

Какие есть легковесные веб-скрапперы имитирующие действия пользователя и выполняющие js?

Здравствуйте!

Есть задача запускать как можно больше сессий за короткое время и на определенное время - 5-10мин, авторизироваться и выполнять определенные действия (нажимать кнопки, заполнять формы, собирать инфу).

До этого использовал puppeteer (в т.ч. headless), но получалось без проблем асинхронно запускать только около 10 окон хрома, дальше программа начинала лагать. Пробовал разбивать на процессы и потоки, результат не на много лучше и вместо проги начинал лагать компьютер.

В идеале запускать 30-200 сессий, есть ли какие-либо решения для подобной задачи? Не обязательно на nodejs.
  • Вопрос задан
  • 615 просмотров
Пригласить эксперта
Ответы на вопрос 4
firedragon
@firedragon
Senior .NET developer
Есть apache jmeter
большой вопрос что вам нужно по интерактиву.
Если знаете Java то можете вообще свой модуль написать
Ответ написан
@Flying
Использую связку puppeteer и pm2. Scraper запускается в несколько instances, контролируемых pm2, каждый из них использует свой puppeteer. Scraper прогоняет N циклов и корректно выходит, закрывая браузер, но pm2 настроен на автоматический перезапуск - это позволяет избежать выедания всей памяти. Всё это крутится на пачке самых дешёвых vps по 1-2 евро в месяц за штуку, такого обычно хватает на 3-4 instance'а (из-за прожорливости Chromium).

В зависимости от специфики цели параметры могут варьироваться, в частности можно неплохо сэкономить если можно не запускать Chromium, а сделать всё средствами самой node.js, но тут надо знать специфику вашей задачи.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы