miv-men
@miv-men
Фронт и бэк

Почему Nightmare.js не отдает результат?

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

Решил освоить Nightmare.js для парсинга динамического контента с сайтов.
Я преимущественно работаю на php, с node.js на "Вы".

Установил nvm, node.js и собственно nightmare.js, создал файл index.js протестировал работу скрипта все хорошо.
С https://github.com/segmentio/nightmare взял пример:
const Nightmare = require('nightmare')
const nightmare = Nightmare({ show: true })

nightmare
  .goto('https://duckduckgo.com')
  .type('#search_form_input_homepage', 'github nightmare')
  .click('#search_button_homepage')
  .wait('#r1-0 a.result__a')
  .evaluate(() => document.querySelector('#r1-0 a.result__a').href)
  .end()
  .then(console.log)
  .catch(error => {
    console.error('Search failed:', error)
  })

ничего не возвращает:
5e870ec24a2fb821905721.png
Объект nightmare выводит:
var Nightmare = require('nightmare');
var nightmare = Nightmare({ show: true });

console.log(nightmare);

5e870f22038dd291952290.png

Пытался нагуглить эту проблему, но судя по всему все должно работать сразу по установки, никаких доп. настроек не требуется, что я сделал не так?

Может я не установил какой то пакет, который считается очевидным, для тех кто работает в node.
Я установил npm, node.js, Nightmare.js и electron. Может что то еще нужно поставить для работы?
Может я жду вывода в консоле, а для вывода нужен headless-браузер? Или еще какие нюансы?
  • Вопрос задан
  • 458 просмотров
Решения вопроса 1
miv-men
@miv-men Автор вопроса
Фронт и бэк
Оказалось что Nightmare свое отжил, в node 8+ и со свежим electron не работает.

Как аналог можно использовать puppeteer
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
joeberetta
@joeberetta
Читай: https://epdf.pub/google-for-dummies.html
Обратите внимание на строчку с .then(console.log)
Предполагаю, что там должно быть что-то такое:
.then(res => console.log(res))
Ответ написан
Ваш ответ на вопрос

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

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