<input type="checkbox" name="checkname" id="checkid" value="checkvalue" class="checkclass" checked="checked">
をagoutiでチェックを入れるにはどうすればいいのでしょうか?
page, err := driver.NewPage(agouti.Browser("chrome")) page.Navigate("https://www~")
をして
page.FindByID("checkid").Check()
page.FindByID("checkid").Click()
としてもできませんでした
仰っている「できませんでした」はエラーが無いのに、チェックが付かないと思っていいでしょうか。
という推測からいくとpage, err := driver.NewPage(agouti.Browser("chrome"))のerrはエラーではないですよね。コンソールに何も出ないということで良いでしょうか。またチェック以外のagoutiの動作はどうでしょうか。chromeのドライバが正常に動いているかどうかを確認したいです。
page.Navigateまでは問題なくできています
スクリーンショットを撮ってみるとちゃんとそのページが写し出されています
ですのでチェックだけの問題かなと認識しています
ご確認ありがとうございます!となるとドライバは正常に動いていることになります。
頂いた部分的なhtmlだけだとこちらで試すのも難しいので、コードは書いていませんがFindByIDでクリックしている例が見つからなかったので一旦、
https://qiita.com/ekzemplaro/items/8c84c4afbc4365e6b149
以下の書式に書き直してもらうことは可能でしょうか?事例ベースの回答となってしまい申し訳ございませんが。。
str_select = "input[type='checkbox'][id='plan_b']"
item = page.Find(str_select)
item.Click()
ありがとうございます
item.Click()
も
item.Check()
もやってみたのですがスクリーンショットをとってもチェックは入っていませんでした
肝心な部分を書きもれました!大変申し訳ないです。
「checkbox以外の操作は効きますか?」です。テキストボックスの入力などを想定しております。
あと、チェック付けたいURLって教えて頂くことは難しいですよね・・
このページではないのですが、このページに来る前のログイン画面でパスワードを入力してからのsubmitはできました
このページは条件を満たさないと表示がされないものになりますので教えても試される事は難しいと思います
すいません
ご返信が遅くなり大変申し訳ないです。手元でもテストしようとしたのですがうまくいかなくて。
(ミイラ取りがミイラに・・笑)
一点確認ですが、html上ではchecked="checked"なのでチェックは最初から入っているようにも見えます。
なので、何もしなければチェックボックスがどういう状態なのかという点が気になります。
checkedなのですがチェックは何故か入っていないのです
それは変ですね。。どうもhtml自体はおかしいような気がしますね。
https://stackoverflow.com/questions/64531070/how-do-i-check-the-checkbox-in-agouti
みたいにidからclassに変更するとか試す方法がありますが、元からchromeドライバ自体が誤作動する書式で動いているのであればどうにもできないですね。。
症状でググっていた所、pythonのseleniumなのですが
from selenium.webdriver.common.action_chains import ActionChains
element = driver.find_element_by_xpath("~") ActionChains(driver).move_to_element(element).click(element).perform()
ならできるとあり、pythonでこれを試してみるとできました
agoutiではないのですが