我正在尝试使用mechanize gem来抓取登录后面的页面。但是对于我使用的网站,他们没有在html中命名他们的用户名或密码字段。我已经搜索了Mechanize文档,但我无法在不使用字段名称的情况下在代码中输入text。有没有办法找到页面上的第5个元素,或第一个文本框?
答案 0 :(得分:0)
您可以使用
agent = Mechanize.new
page = agent.get(<yourpage>)
form = page.forms[<index of form>]
form.fields[<index of field>].value = '<your value>' # setting the values
form.fields[<index of field2>].value = '<your value2>'# setting the values
page2 = form.submit # submitting the form
答案 1 :(得分:0)
如果您可以自由使用其他宝石,那么为什么不尝试使用Nokogiri Gem.
可以使用css选择器或者可以使用XPath选择器search specific elements非常灵活。