Rails: как нажать на кнопку с помощью драгоценного камня Mechanize?

Я пытаюсь нажать кнопку YouTube Load more в пользовательском разделе плейлиста, используя Mechanize gem . Но проблема в том, что я не нашел способов щелкнуть button с помощью механического драгоценного камня в моем приложении 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>

Итак, есть ли способы нажать на эту кнопку, чтобы я мог загрузить оставшиеся элементы плейлиста, используя механизированный камень?

Спасибо.


person huzefa biyawarwala    schedule 07.01.2016    source источник


Ответы (1)


Mechanize поддерживает нажатие кнопки методом click_button.

Вы должны быть в состоянии сделать это:

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

form.click_button(button)

или вы можете вызвать submit для самого агента:

agent.submit(form, button)

Если у вас нет кнопки внутри объекта формы, mechanize, вероятно, не сможет с ней работать. Вы можете проверить это, просмотрев все кнопки в объекте page.

person Rajesh Sharma    schedule 07.01.2016