我有一些看起来像这样的东西:
def self.foo
agent = Mechanize.new
form = agent.get("link/to/form/url")
form.form_with(:name => "form_name") do |f|
f.field_with(:name => "input_name").value = "random_value"
agent.form.forms[0].submit
agent.follow_meta_refresh = true
end
self.bar
end
def self.bar
#may need to pass variable for agent here?
doc = Nokogiri::HTML(open(need redirect object!))
doc.css(".random_class").text
end
我调用类方法后foo
,它成功找到表单,填写输入并提交。但是,当它完成并调用时bar
,我被卡住了。
我还没有找到一种方法来成功传递 Mechanize 对象,该对象是重定向后表单提交后生成的页面的 HTML,以测试并查看我是否捕获了正确的页面,并使用 Nokogiri 解析 CSS。
那里有任何机械化向导有任何建议吗?