@Meyz

Почему не работает reduce в node.js/selenium?

Есть такой код, должен заходить на страницу новостей вк и парсить новости, но выводит почему-то только одну новость. Что я не так делаю?
await driver.get('https://vk.com/feed');
        await driver.sleep(500);
        const result = await driver.findElements(By.className('_post'));
      const arr = await result.reduce(async (res, item, index) => {
            try {
                const textItem = await item.findElement(By.className('wall_post_text'));
                if (textItem) {
                    const text = await textItem.getText();
                    console.log(text) // если тут ставлю лог, то видно, что новость на самом деле не одна
                    res.push(text);
                    console.log(123) // а этот лог срабатывает только один раз, получается пуш почему-то игнорируется...
                }
            }
            catch(e) {
                if(e.name === 'NoSuchElementError') {
                    console.log('Element not found');
                }
            }
            finally {
                return res;
            }
        }, []);
console.log(arr); // возвращает только одну новость
  • Вопрос задан
  • 56 просмотров
Пригласить эксперта
Ваш ответ на вопрос

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

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