12306為例
js = "document.getElementById('train_date').removeAttribute('readonly');" driver.execute_script(js)
time2獲取當前時間
tomorrow_time 獲取明天時間
from selenium import webdriver import time import datetime time1=datetime.datetime.now().strftime("%Y-%m-%d.%H%M%S.%f") time2=datetime.datetime.now().strftime("%Y-%m-%d") oneday = datetime.timedelta(days=1) tomorrow_time = datetime.datetime.now() + oneday tomorrow_time = datetime.datetime.strftime(tomorrow_time, '%Y-%m-%d')driver = webdriver.Firefox() # driver.maximize_window() driver.implicitly_wait(6) #頁面不穩定 driver.get("http://www.12306.cn/mormhweb/") driver.find_element_by_xpath("html/body/div[1]/div[4]/div[3]/div[1]/ul/li[3]/a").click() time.sleep(1) driver.switch_to.window(driver.window_handles[1]) driver.find_element_by_id("fromStationText").clear() driver.find_element_by_id("fromStationText").send_keys('上海') driver.find_element_by_xpath("//div[@id='form_cities']/div[@id='panel_cities']/div[@id='citem_0']").click() time.sleep(2) driver.find_element_by_id("toStationText").clear() driver.find_element_by_id("toStationText").send_keys('九江') driver.find_element_by_xpath("//div[@id='form_cities']/div[@id='panel_cities']/div[@id='citem_0']").click() # 去除js read-only屬性 js = "document.getElementById('train_date').removeAttribute('readonly');" driver.execute_script(js) # 用js方法輸入日期 js_value = 'document.getElementById("train_date").value="'+time2+'"' driver.execute_script(js_value) time.sleep(1) driver.find_element_by_id("a_search_ticket").click() time.sleep(2) try:assert u'車票預訂 | 客運服務 | 鐵路客戶服務中心'== driver.titleprint("passed") except Exception as e:print("failed") driver.quit()
?