Ruby Mechanize Gem查找没有名称的字段

时间:2017-11-23 03:37:43

标签: ruby-on-rails mechanize scrape

我正在尝试使用mechanize gem来抓取登录后面的页面。但是对于我使用的网站,他们没有在html中命名他们的用户名或密码字段。我已经搜索了Mechanize文档,但我无法在不使用字段名称的情况下在代码中输入text。有没有办法找到页面上的第5个元素,或第一个文本框?

2 个答案:

答案 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非常灵活。