Я пытаюсь автоматизировать браузер, используя puppeteer. js, и я нажимаю div в длинном списке div, которые находятся в модальном режиме и прокручиваются. Я oop, через которые я хочу кликнуть на div и кликнуть на них по порядку. Похоже, если я дам браузеру достаточно времени, он прокрутится до нужной позиции, а затем щелкнет по div.
Этот пример работает:
users_names[14].click().catch(function(error){console.log("some error ", "position", error)});
await delay(2000);
users_names[45].click().catch(function(error){console.log("some error ", "position", error)});
await delay(2000);
users_names[54].click().catch(function(error){console.log("some error ", "position", error)});
await delay(2000);
users_names[0].click().catch(function(error){console.log("some error ", "position", error)});
await delay(2000);
users_names[29].click().catch(function(error){console.log("some error ", "position", error)});
Но, очевидно, если я хочу нажимать на разные элементы, я не могу их жестко закодировать. Я пытался сделать это, но он проходит слишком быстро, чтобы прокрутить и нажать на элементы.
_.forEach(namesToSend, function(n) {
var position = memberOrder.indexOf(n)
console.log('position: ', position)
if(position != -1)
users_names[position].click().catch(function(error){console.log("some error ", position, error)});
});
Как сделать так, чтобы l oop замедлялся, чтобы он ожидал события щелчка, прежде чем двигаться дальше?