Sha256: e99220ca508ffdd56f145b28017b6c04b678e246a3ac5a292a01c6f459f56e7c
Contents?: true
Size: 968 Bytes
Versions: 4
Compression:
Stored size: 968 Bytes
Contents
require 'selenium-webdriver' require_relative './authenticator' require_relative './message_handler' require_relative './cookie_handler' class FacebookConnection attr_reader :headless def initialize(headless:) @headless = headless cookie_handler.load end def login authenticator = Authenticator.new(driver) authenticator.login end def close cookie_handler.save end def message_handler @message_handler ||= MessageHandler.new(driver) end def driver return @driver if defined? @driver options = Selenium::WebDriver::Chrome::Options.new options.add_argument('--disable-notifications') options.add_argument('--headless') if headless options.add_option('detach', true) unless headless @driver = Selenium::WebDriver.for :chrome, options: options @driver.manage.window.resize_to(1920, 1080) @driver end def cookie_handler @cookie_handler ||= CookieHandler.new(driver) end end
Version data entries
4 entries across 4 versions & 1 rubygems