目的
html5の日付入力を試してみる
※yyyymmdd の形式で入力している例しか見つけられなかったのだけど
Chrome で入力すると yyyy Keys.TAB mmdd HHMM になるんだよな・・・
試したサンプルでも上記のキー入力で動作が確認できたしな
サンプルコード
対象とするhtmlの抜粋
<input type="date" name="caldate1">
<input type="datetime-local" name="caldate2">
コード
# Windows Add env PYTHONIOENCODING = UTF-8 & restart vscode
import time
from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait, Select
from selenium.webdriver.support import expected_conditions as EC
from selenium.webdriver.common.keys import Keys
driver = webdriver.Chrome('C:\\Dev\\tool\\webdriver\\chromedriver.exe')
driver.get('http://localhost:8080/')
try:
element = WebDriverWait(driver, 10).until(
EC.presence_of_element_located((By.NAME, 'caldate1'))
)
elm = driver.find_element_by_name('caldate1')
# ブラウザでのキー入力は yyyy Keys.TAB mmdd
elm.send_keys('1987')
elm.send_keys(Keys.TAB)
elm.send_keys('1231')
elm = driver.find_element_by_name('caldate2')
# ブラウザでのキー入力は yyyy Keys.TAB mmdd HHMM
elm.send_keys('2019')
elm.send_keys(Keys.TAB)
elm.send_keys('0102')
elm.send_keys('2314')
time.sleep(2) # 表示確認用のwait
finally:
driver.quit()
参考にしたサイトはこちら
日付の入力欄を作る
How to Select Date from DatePicker/Calendar in Selenium Webdriver