我正在尝试自动登录并在网站上发布一些内容,但我不能使用Mechanize,因为涉及许多javascript操作。我想知道是否有任何其他宝石/工具可以使用该支持javascript。
我也尝试过Watir,但它涉及到浏览器,我想要一个没有浏览器的选项。
谢谢,
答案 0 :(得分:4)
有几种选择:
在这里阅读更多关于如何使用它们的信息,例如capybara: https://github.com/jnicklas/capybara#drivers
答案 1 :(得分: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@example.com")
browser.text_field(name: 'password').set("secret")
browser.button(name: "Sign in").click
end
# etc...
browser.close
headless.destroy