没有实际的浏览器窗口自动化浏览器?

时间:2012-08-28 12:58:03

标签: ruby capybara mechanize watir

我需要做一个自动脚本来填充两个文本字段并单击网页上的按钮,并将所有结果文本存储到字符串变量中。

我知道如何使用Watir执行此操作,但问题是此脚本将在Windows服务器上运行(未连接物理监视器)。

所以这需要某种“模拟浏览器”而没有实际的浏览器窗口......我以前从未做过这样的事情,但谷歌搜索之后我认为Ruby gems“mechanize”或“capybara”也许能够做到诀窍。

但是因为我没有任何水豚或mehcanize的经验,我在这里要求一点帮助......

这是我正在尝试做的,用Watir代码编写。如果有人能告诉我如何用“机械化”或“水豚”做同样的事情,我真的很感激。或者,如果还有其他方法可以做到这一点,欢迎提出所有建议:

require "watir"
ie = Watir::Browser.new
ie.goto "http://www.vero.fi/vere/Tarkistus/VeronumeronTarkistus.aspx/"
ie.text_field(:id, "tbNimi").set "John Smith"
ie.text_field(:id, "tbVerotunnus").set "123456789012"
ie.button(:id, "btnHae").click
info = ie.text

3 个答案:

答案 0 :(得分:0)

您也可以使用Celerity。它使用Watir API驱动无头浏览器。

答案 1 :(得分:0)

Selenium 可以帮助Selenium Server运行并且Firefox在无头状态下运行

我基本上在here

上写了一篇文章

希望这个帮助

答案 2 :(得分:-1)

我使用PhantomJS(使用Capybara驱动程序poltergeist)。它运行无头WebKit(Safari和Chrome的浏览器引擎),Capybara告诉它该怎么做。这是我发现的这个概念最简单的设置实现。

代码看起来像:

visit "http://www.vero.fi/vere/Tarkistus/VeronumeronTarkistus.aspx/"
fill_in "tbNimi", :with => "John Smith"
fill_in "tbVerotunnus", :with => "123456789012"
click_on "btnHae"
info = page.html
相关问题