【问题标题】:Watir doesn't see element with PhantomjsWatir 没有看到带有 Phantomjs 的元素
【发布时间】:2014-11-06 04:55:13
【问题描述】:

我正在尝试使用以下代码截取表单:

require 'watir'

browser = Watir::Browser.new :phantomjs
browser.driver.manage.window.maximize
browser.goto 'https://www.binbank.ru/landing/credits/'

browser.ul(class: 'r-buttons').li(text: '6').click
sleep 2
browser.screenshot.save 'a.png'

a.png 不捕获表单。使用 Firefox 作为浏览器表单可以在 a.png 上看到。这是为什么?如何使用 PhantomJS 与此表单交互?

【问题讨论】:

    标签: ruby phantomjs watir


    【解决方案1】:

    PhantomJS 在该页面上似乎存在 SSL 问题。您需要以某种方式将--ignore-ssl-errors=true 传递给底层网络驱动程序。

    根据How to pass browser parameter to Watir 判断,可以这样完成:

    args = %w{--ignore-ssl-errors=true}
    browser = Watir::Browser.new(:phantomjs, :args => args)
    

    【讨论】:

    • 没错。我之前遇到过 SSL 和 PhantomJS 的问题(页面根本没有显示)——但我不知道有可能只有特定的部分没有被渲染。我能知道你是怎么猜到这是问题所在?
    • 我写了一个普通的 PhantomJS script,当我看到由于 SSL 握手错误而没有加载许多资源时,我尝试了一些 commandline options 看看它们是否有帮助。跨度>
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-17
    • 2010-10-23
    • 2014-12-17
    • 2015-06-08
    • 2017-12-30
    相关资源
    最近更新 更多