Rails:如何使用Mechanize gem点击一个按钮?

时间:2016-01-07 13:41:00

标签: ruby ruby-on-rails-4 mechanize-ruby

我正在尝试使用Load more gem点击用户播放列表部分中的youtube&#39 {s} Mechanize按钮。但问题是,我找不到在我的button应用程序中使用mechanize gem点击Rails的任何方法。

我要点击的按钮的html代码是:

<button class="yt-uix-button yt-uix-button-size-default yt-uix-button-default load-more-button yt-uix-load-more browse-items-load-more-button" data-uix-load-more-target-id="channels-browse-content-grid" data-uix-load-more-href="/browse_ajax?action_continuation=1&continuation=4qmFsgLLARIYVUNDZ2xpTjFuLU9haVlKYlpWOGd5cE5BGq4BRWdsd2JHRjViR2x6ZEhNZ0FUQUJPQUZnQVdvQWVtWlJWV3hRWVRGck5WSXlWa2hPVlUwMFUzcG9jMDFXWjNSV1ZsSkVaRlphZGxSRlVYUmllbVJ0VWxkck0wOVlTblZrYXpsMFVsaGFhR1JXVGxCVk0wNW9UbFJrYmxSSFRuTlJiazVEVkcxYWJHSnRXWGRTVmtaMldXMVZkRlJVYkc5a1YzaEZUV2U0QVFBJTNE" aria-label="Load more " onclick=";return false;" type="button">
    <span class="yt-uix-button-content">
      <span class="load-more-loading hid">
        <span class="yt-spinner"></span>
          <span class="load-more-text"> Load more </span>
        </span>
      </span>
    </span>
 </button>

那么,是否有任何方法可以点击此按钮以便我可以使用mechanize gem加载剩余的播放列表项?

谢谢。

1 个答案:

答案 0 :(得分:-1)

Mechanize支持使用click_button方法点击按钮。

你应该可以这样做:

button = form.button_with(:id "foobar") # your criteria

form.click_button(button)

或者您可以在代理商本身上致电提交:

agent.submit(form, button)

如果表单对象中没有按钮,mechanize可能无法使用它。您可以查看page对象中的所有按钮进行检查。