Method: Ferrum::Page#initialize
- Defined in:
- lib/ferrum/page.rb
#initialize(target_id, browser, new_window = false) ⇒ Page
Returns a new instance of Page.
62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
# File 'lib/ferrum/page.rb', line 62 def initialize(target_id, browser, new_window = false) @target_id, @browser = target_id, browser @network_traffic = [] @event = Event.new.tap(&:set) @frames = {} @waiting_frames ||= Set.new @frame_stack = [] # Dirty hack because new window doesn't have events at all sleep(NEW_WINDOW_WAIT) if new_window @session_id = @browser.command("Target.attachToTarget", targetId: @target_id)["sessionId"] host = @browser.process.host port = @browser.process.port ws_url = "ws://#{host}:#{port}/devtools/page/#{@target_id}" @client = Browser::Client.new(browser, ws_url, 1000) @mouse, @keyboard = Mouse.new(self), Keyboard.new(self) @headers, = Headers.new(self), Cookies.new(self) subscribe prepare_page end |