Параметр Puppeteer slowMo в веб-драйвере селена?

В https://github.com/GoogleChrome/кукловод

Есть один вариант добавить задержку в каждое действие

Slow it down - the slowMo option slows down Puppeteer operations by the specified amount of milliseconds. It's another way to help see what's going on.

Я пытаюсь найти аналогичный способ в Selenium WebDriver (использую библиотеку ruby).

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

Пошаговое руководство по созданию собственного Slackbot: От установки до развертывания
Пошаговое руководство по созданию собственного Slackbot: От установки до развертывания
Шаг 1: Создание приложения Slack Чтобы создать Slackbot, вам необходимо создать приложение Slack. Войдите в свою учетную запись Slack и перейдите на...
0
0
514
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это волшебный метод, он более эффективен, так как мы можем помещать случайный сон между каждой командой, чтобы сделать симуляцию похожей на человека.

module Selenium::WebDriver::Remote
  class Bridge
    def execute(command, opts = {}, command_hash = nil)
      verb, path = commands(command) || raise(ArgumentError, "unknown command: #{command.inspect}")
      path = path.dup

      path[':session_id'] = session_id if path.include?(':session_id')

      begin
        opts.each { |key, value| path[key.inspect] = escaper.escape(value.to_s) }
      rescue IndexError
        raise ArgumentError, "#{opts.inspect} invalid for #{command.inspect}"
      end

      Selenium::WebDriver.logger.info("-> #{verb.to_s.upcase} #{path}")
      res = http.call(verb, path, command_hash)
      sleep rand(0.1..0.8).round(2) # <--- Add your sleep here.
      res
    end
  end
end

Другие вопросы по теме