この記事で解決できる悩み
いずみ
こんな悩みを解決できる記事を書きました!
僕は現役フリーランスエンジニア(歴9年)で、資格は13個保有しています。
「Seleniumでテキストの値がclearできない」とお悩みではありませんか?
Seleniumで某サイトへの自動操作ツールを作っていたんですが、なぜかテキストの値がclearで消えない…
結論、「全選択+削除」を行えば消せました。
「Ctl+A」で全選択して「Deleteキー」で削除をSeleniumで再現する感じですね。
ということで、本記事ではSeleniumでclearできない場合の対処法を解説します。
すぐ読み終わるので、ぜひ最後まで読んでくださインカ帝国。
目次
Seleniumでclearしてみる
まずは、Seleniumでclearしてみます。
driver.find_element(By.XPATH, "//input[@name='price']").clear()
上記のコードで本来なら削除できるはずですが、なぜか値をクリアできない…
Seleniumでclearできない場合の対処法
結論、「全選択+削除」を行えば値をクリアできます。
from selenium.webdriver.common.keys import Keys
input = driver.find_element(By.XPATH, "//input[@name='price']")
input.send_keys(Keys.COMMAND if platform.system() == "Darwin" else Keys.CONTROL, "a")
input.send_keys(Keys.DELETE)
macの場合はCOMMANDキーになるので注意してください。
まとめ
今回は、Seleniumでclearできない場合の対処法について解説しました。
以下が本記事のまとめになります。
- おすすめ本
Pythonの勉強なら「独習Python
最後までお読みいただき、ありがとうございました!
- クソおすすめ本
海外のエンジニアがどういった思考で働いているかが理解できます。
海外に行く気はないけど海外エンジニアの動向が気になる雑魚エンジニアにおすすめです(本当におすすめな本しか紹介しないのでご安心を)。