- ベストアンサー
Python codeで何と書けば良いのか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
from selenium import webdriver from selenium.webdriver.common.by import By # ブラウザーの起動 driver = webdriver.Chrome() # ページのロード driver.get("https://example.com") # チェックボックスのラベルを指定して要素を取得 checkbox = driver.find_element(By.XPATH, '//label[contains(text(), "同意する")]/preceding-sibling::input') # チェックボックスをクリック checkbox.click() 上記のコードでは、find_elementメソッドで、XPathを使用してラベルに基づいてチェックボックスの要素を取得しています。click()メソッドを使用して、要素をクリックしています。 上記のコードを使ってみてください
その他の回答 (1)
- gyokusei
- ベストアンサー率80% (4/5)
Selenium Web Driverを使用して、"同意する" チェックボックスを選択するには、次のようにコードを記述することができます。 # 必要なライブラリをインポート from selenium import webdriver from selenium.webdriver.common.by import By # WebDriverを起動し、ページを開く driver = webdriver.Chrome() driver.get("https://example.com") # "同意する" チェックボックスを選択する checkbox = driver.find_element(By.ID, "agree-checkbox") checkbox.click() 上記のコードでは、 driver.find_element(By.ID, "agree-checkbox") で "同意する" チェックボックスを探し、 checkbox.click() でクリックして選択します。実際のサイトのHTMLコードによっては、チェックボックスの選択方法が異なる場合がありますが、通常、 find_element() メソッドを使用して、ID、クラス名、または要素の名前で要素を検索することができます。
お礼
回答ありがとうございます。 # "同意する" チェックボックスを選択する→この方法は driver.find_element(By.ID,"*******")やdriver.find_element(By.Name,*******)であることは想像つくのですが、この******の部分に具体的に何が入るのかが解らないのです。貴方の書かれている"agree-checkbox"に相当するのは私の添付ファイルで示したelementでは、”同意します"や”Accept"のように思えるのですが、By.IDでもBy.Name"でもエラーになります。"agree-checkbox"に相当するelementを具体的に示して頂けませんか?"
お礼
本当にありがとうございます。 お示し頂いたXPATHを使う方法を試しましたが下記のようなエラーが出ました。 selenium.common.exceptions.NoSuchElementException: Message: no such element: Unable to locate element: {"method":"xpath","selector":"//label[contains(text(), "同意する")]/preceding-sibling::input"} (Session info: chrome=111.0.5563.65) 最終行の (Session info: chrome=111.0.5563.65)が気にかかります。 Chromeは110と思っていましたが、111にUpdateされており、例によってChromDriverとのVersionの不一致に起因するものかも知れません。ChromeDriverを更新してもう一度トライして見ます。その結果を再度、お知らせします。 取り急ぎお礼を申し上げます。
補足
ChromeとChromeWebDriverのVersionを合わせましたがダメでした。貴方がいろいろ解決策を示してくれたので、もう少し自身で頑張ってみます。