2012-11-20 64 views
3

我试图自动登录和发布一些网站上的东西,但我不能使用机械化,因为涉及到很多JavaScript操作。我想知道是否有任何其他宝石/工具使用该支持JavaScript。自动化与网站的互动 - Rails

我也试过Watir,但是它涉及到浏览器,我想要一个浏览器少的选项。

谢谢

回答

4

有几种选择:

了解更多关于如何与水豚在这里使用它们,例如: https://github.com/jnicklas/capybara#drivers

+1

谢谢,但不是水豚用于测试?我正在寻找一些东西在生产模式下与网站进行交互..而不是测试.. – user1069624

+0

是的,水豚通常用于测试,我只是将用于水豚的驱动程序连接起来作为进一步的参考。 – Agush

+0

而这个人正在使用它与机械化的东西类似于你想要的东西http://www.chadcf.com/blog/using-capybara-javascript-capable-replacement-mechanize – Agush

1

你可以用watir试试headless来隐藏浏览器。你的代码看起来像这样:

require 'watir-webdriver' 
require 'headless' 

headless = Headless.new 
headless.start 

profile = Selenium::WebDriver::Firefox::Profile.new 
driver = Selenium::WebDriver.for :firefox, profile: profile 
browser = Watir::Browser.new driver 

browser.goto "http://example.com" 
browser.wait_until do 
    browser.text_field(name: 'login').set("[email protected]") 
    browser.text_field(name: 'password').set("secret") 
    browser.button(name: "Sign in").click 
end 

# etc... 

browser.close 
headless.destroy