前提・実現したいこと
pythonでseleniumを使ってスクレイピングを実装中.
特定のチェックボックスに入力後に現れる要素(inputのbutton)を押下したい.
発生している問題・エラーメッセージ
①②selenium.common.exceptions.ElementNotInteractableException: Message: element not interactable ③selenium.common.exceptions.TimeoutException: Message:
該当のソースコード
driver = webdriver.Chrome() url = '開きたいURL' driver.get(url) html = requests.get(url) driver.execute_script("window.scrollTo(0, 300)") driver.find_element_by_xpath("//input[@id='チェックボックスのID']").click() ①driver.find_element_by_css_selector('押下したいボタンのクラス名').click() ②driver.find_element_by_xpath("//input[@class='押下したいボタンのID']").click() ③wait = WebDriverWait(driver, 20) # 最大20秒 elem = wait.until( expected_conditions.element_to_be_clickable( (By.LINK_TEXT,"選択した条件で検索する")) ) elem.click()
試したこと
3種類のコードを試しました.
ソースコードとエラーコードの①~③は対応しています.
押下したいボタンが非表示の状態になっているのかと思い,出てくるまで待つよう③にしましたがタイムアウトエクセプションが返ってきました.
なお,ボタンが表示されていることは目視で確認済みです,
補足情報(FW/ツールのバージョンなど)
chrome85
python3
windows10
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/08/30 10:37
2020/08/30 10:44
2020/08/30 11:01