#やりたいこと
Seleniumで非同期に生成されるいいねボタンをクリックしたい
詰まっていること
いいねボタンの要素を取得するところまでは、動作しているのですが、
その要素をクリックするアクションを指定すると要素が見つからないとエラーが発生します。
要素は取得できているので、あとはクリックだけなのですが、
非同期の要素をクリックするために必要なSeleniumの設定があるのでしょうか。
知見がある方お力添えいただければ幸いです。
よろしくお願いします!
element not visible (Selenium::WebDriver::Error::ElementNotVisibleError)
#環境
Mac ローカル
gem 'selenium-webdriver'
Ruby
1require 'selenium-webdriver' 2article_url = "https://qiita.com/tomerun/items/9cb81d7a98150ff22f53" 3driver = Selenium::WebDriver.for :chrome 4/* ここで qiita ログインする */ 5driver.manage.timeouts.implicit_wait = 30 6driver.navigate.to target_url 7#出力されるもの <Selenium::WebDriver::Element:0x007fc9ca84e720> 8puts x = driver.find_elements(:class => "likable")[0].find_element(:xpath, 'button') 9#出力されるもの 'いいね' 10puts y = driver.find_elements(:class => "likable")[0].find_elements(:xpath, 'button')[0].attribute("data-tip") # 11#エラーメッセージ element not visible 12x.click 13driver.quit
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/12/26 10:23