【python+selenium实现12306模拟火车票的查询及预订】python+selenium实现12306模拟火车票的查询及预订:
线性代码实现流程,完整代码如下:
# coding = utf-8from datetime import date, timedeltafrom selenium import webdriverfrom selenium.webdriver.common.by import Byfrom time import sleep# 以下为定义函数部分,其目的是返回今天后的第n天后的日期,格式为“2022-03-28”def date_n(n):return str((date.today() + timedelta(days=int(n))).strftime('%Y-%m-%d'))# 以下变量用于定义出发城市和到达城市from_station, to_station = '成都', '重庆'# 以下变量为tomorrow变量tomorrow = date_n(1)print(tomorrow)# 打开chrome浏览器driver = webdriver.Chrome()# 设置浏览器最大化driver.maximize_window()# 打开携程网火车票查询页面driver.get('https://www.12306.cn/index/')# 定位出发城市和到达城市的页面元素# 输入出发城市driver.find_element(By.XPATH, '//input[@id="fromStationText"]').click()driver.find_element(By.XPATH, '//input[@id="fromStationText"]').send_keys(from_station)driver.find_element(By.XPATH, '//div[@id="citem_2"]').click()# 输入到达城市driver.find_element(By.XPATH, '//input[@id="toStationText"]').click()driver.find_element(By.XPATH, '//input[@id="toStationText"]').send_keys(to_station)driver.find_element(By.XPATH, '//div[@id="citem_1"]').click()sleep(2)# 输入出发时间driver.find_element(By.XPATH, '//input[@id="train_date"]').clear()driver.find_element(By.XPATH, '//input[@id="train_date"]').send_keys(tomorrow)sleep(2)# 点击查询driver.find_element(By.XPATH, '//a[@id="search_one"]').click()sleep(2)# 切换到新窗口driver.switch_to.window(driver.window_handles[1])# 点击D2244车次的预订# driver.find_element(By.XPATH, '//a[@][1]').click()driver.find_element(By.XPATH, '//tr[starts-with(@id,"ticket_76000D22440N_01_06")]/td/a').click()sleep(2)'''账号登录'''# 输入用户名driver.find_element(By.ID, 'J-userName').send_keys('qaws12342')# 输入密码driver.find_element(By.ID, 'J-password').send_keys('qwedsa123')# 关闭浏览器driver.quit()
- 春季老年人吃什么养肝?土豆、米饭换着吃
- 三八妇女节节日祝福分享 三八妇女节节日语录
- 老人谨慎!选好你的“第三只脚”
- 校方进行了深刻的反思 青岛一大学生坠亡校方整改校规
- 脸皮厚的人长寿!有这特征的老人最长寿
- 长寿秘诀:记住这10大妙招 100%增寿
- 春季老年人心血管病高发 3条保命要诀
- 眼睛花不花要看四十八 老年人怎样延缓老花眼
- 香槟然能防治老年痴呆症? 一天三杯它人到90不痴呆
- 老人手抖的原因 为什么老人手会抖
