前提・実現したいこと
pythonとseleniumを使ってテニス予約サイトの予約状況を知りたいです。
発生している問題・エラーメッセージ
seleniumでselectを使い、セレクトボックスの中の庭球場を選択しているはずが、反映されない。
該当のソースコード
html
1<html> 2 省略 3<div class="double-contents"> 4<div class="left"> 5<select multiple="multiple" name="g_bunruicd_1_show" size="5"> 6 7 <option value="2000">庭球場</option> 8 9</select> 10<!-- åé¡é¸æï¼ SUBMITç¨ã®CONTROLãå®ç¾©ããã --> 11 12<select multiple="multiple" size="5" name="g_bunruicd_1" style="visibility:hidden;height:0px"> 13 14 <option value="2000">1</option> 15 16</select> 17 18<input style="width:39px" value="解除" onclick="document.clrBunrui1.submit();" type="button"> 19<input style="width:39px" value="確定" onclick="submitBunrui1();" type="button"> 20 21</div><!-- left --> 22<div class="right"> 23 24<input name="u_genzai_idx" value="0" type="hidden"> 25<input name="g_kinonaiyo" value="17" type="hidden"> 26 27</div><!-- right --> 28</div>
python
1from selenium import webdriver 2 3from selenium.webdriver.support.ui import WebDriverWait 4 5from selenium.webdriver.support.ui import Select 6 7driver = webdriver.Safari() 8driver.get("https://yoyaku.city.nerima.tokyo.jp/stagia/reserve/gin_menu") 9 (省略)ログインまで 10ch = driver.find_element_by_xpath("//div[@id='contents']/form/div/div/div/div/div/div/select") 11se = Select(ch) 12 13try: 14 se.select_by_visible_text("庭球場") 15 driver.find_element_by_xpath("//input[@value='確定']").click() 16 print("success") 17except: 18 print("error")
試したこと
上のコードを流して、successになることを確認しました。
selectではなくoptionをクリックするコードも試しました。
actionchainsを使って、shiftを押しながらクリックやmove_to_elementなども試しました。
補足情報(FW/ツールのバージョンなど)
python3.5
selenium3.0.2
あなたの回答
tips
プレビュー