我最近开始在 ruby 中使用 mechanize,它运行良好。今天尝试获取一个页面,但是由于某种原因输入字段没有被占用,请参考下面的代码:
agent = Mechanize.new
agent.add_auth(url, user, pass1, realm = nil, domain = nil)
agent.agent.http.verify_mode = OpenSSL::SSL::VERIFY_NONE
#agent.log = Logger.new(STDOUT)
page = agent.get(url)
page.forms.first.field_with(:name => 'Login[username]').value=user
page.forms.first.field_with(:name => 'Login[password]').value=pass2
page = agent.submit(page.forms.first)
page = page.link_with(:text => "Search").click
page = page.link_with(:text => "Spiral").click
pp page
我试图解析的 html 页面包含这一行:
<input name="SpiralMatch_string" type="text" maxlength="128">
但是由于某种原因,当我转储当前“页面”的内容时,与此无关
还有一件事可能是相关的,这个字段下面有一个java运行,每次我在里面输入一些东西,页面的主要内容都是动态变化的。有没有人遇到过同样的问题?