Lua / Splash: ссылка на следующую страницу не выполняется - PullRequest
0 голосов
/ 11 апреля 2019

Я пытаюсь написать скрипт Lua, чтобы перейти на следующую страницу сайта: http://quotes.toscrape.com/js/page/1/

Мой скрипт:


    function main(splash, args)
      assert(splash:go(args.url))
      assert(splash:wait(0.5))
      assert(splash:runjs('document.querySelector(".next a[href]").click()'))
      splash:set_viewport_full()
      return {
        html = splash:html(),
        png = splash:png(),
        har = splash:har(),
      }
    end

Я пробовал несколько CSS-селекторов, которые все работаютв браузере.Однако скрипт Lua возвращает только первую страницу и не открывает следующую.

У кого-нибудь есть идеи, что может быть причиной?

Спасибо и наилучшими пожеланиями Тоби

1 Ответ

0 голосов
/ 17 апреля 2019

Проблема решена!Я только добавил оператор ожидания в течение 1 секунды.Вот правильный код:

function main(splash, args)
  assert(splash:go(args.url))
  assert(splash:wait(0.5))
  assert(splash:runjs('document.querySelector(".next a[href]").click()'))
  assert(splash:wait(1))
  splash:set_viewport_full()
  return {
    html = splash:html(),
    png = splash:png(),
    har = splash:har(),
  }
end
...