• 页面加载策略
  • 代理设置
  • Ruby selenium part2 加载策略及代理

    页面加载策略

    normal

    normal为默认的策略,此策略会使webdriver保持等待,直接返回load事件

    require 'selenium-webdriver'
    caps = Selenium::WebDriver::Remote::Capabilities.chrome
    caps.page_load_strategy='normal'
    
    driver = Selenium::WebDriver.for :chrome, :desired_capabilities => caps
    driver.get('https://www.google.com')
    

    eager

    这将使Selenium WebDriver保持等待, 直到完全加载并解析了HTML文档, 该策略无关样式表, 图片和subframes的加载.

    设置为 eager 时, Selenium WebDriver保持等待, 直至返回 DOMContentLoaded 事件.

    require 'selenium-webdriver'
    caps = Selenium::WebDriver::Remote::Capabilities.chrome
    caps.page_load_strategy='eager'
    
    driver = Selenium::WebDriver.for :chrome, :desired_capabilities => caps
    driver.get('https://www.google.com')
    

    none

    设置为 none 时, Selenium WebDriver仅等待至初始页面下载完成.

    require 'selenium-webdriver'
    caps = Selenium::WebDriver::Remote::Capabilities.chrome
    caps.page_load_strategy='none'
    
    driver = Selenium::WebDriver.for :chrome, :desired_capabilities => caps
    driver.get('https://www.google.com')
    

    代理设置

    # this code was written with Selenium 4
    
    proxy = Selenium::WebDriver::Proxy.new(http: '<HOST:PORT>')
    cap   = Selenium::WebDriver::Remote::Capabilities.chrome(proxy: proxy)
    
    driver = Selenium::WebDriver.for(:chrome, capabilities: cap)
    driver.get('http://google.com')
    

    上一篇:Ruby selenium part1 前期准备

    下一篇:Ruby selenium part3 等待