查询12306火车票,后续完成购票操作

阅读: 评论:0

查询12306火车票,后续完成购票操作

查询12306火车票,后续完成购票操作

import re, json, time
from selenium import webdriverdef get_ticket():from_city = input("出发站:")to_city = input("到达站:")date = input("出发日期(格式:2019-12-30):")file_name = input("存储文件:")driver = webdriver.Chrome()# 起始urlurl = '/'# 发送请求(url)# 等待2stime.sleep(2)# 清除原有的值driver.find_element_by_id('fromStationText').clear()# 点击,使输入框获取焦点driver.find_element_by_id('fromStationText').click()# 输入值driver.find_element_by_id('fromStationText').send_keys(from_city)# 获取局部刷新的数据,然后循环比对文字from_text = driver.find_elements_by_class_name('ralign')# 下拉选项中选择对应车站并点击for i in from_text: == from_city: i.click(); break# 输入到达地(原理同上)driver.find_element_by_id('toStationText').clear()driver.find_element_by_id('toStationText').click()driver.find_element_by_id('toStationText').send_keys(to_city)to_text = driver.find_elements_by_class_name('ralign')for i in to_text: == to_city: i.click(); break# 选择出发时间ute_script(&#ElementById('train_date').value='{}'".format(date))# 点击查询driver.find_element_by_id("search_one").click()# 切换到数据页windows = driver.window_handlesdriver.switch_to.window(windows[-1])time.sleep(2)# 提取数据页数据all_tr = driver.find_elements_by_xpath("//*[@id='queryLeftTable']/tr")li = list()# 保存数据for tr in all_tr[::2]:dic = dict()data = re.sub(r'n', " ", tr.text).split(' ')dic["日期"] = datedic["车次"] = data[0]dic["出发站"] = data[1]dic["到达站"] = data[2]dic["出发时间"] = data[3]dic["到达时间"] = data[4]dic["历时"] = data[5]dic["到达日期"] = data[6]dic["商务座"] = data[7]dic["一等座"] = data[8]dic["二等座"] = data[9]dic["高级软卧"] = data[10]dic["一等软卧"] = data[11]dic["动卧"] = data[12]dic["二等硬卧"] = data[13]dic["软座"] = data[14]dic["硬座"] = data[15]dic["无座"] = data[16]dic["其他"] = data[17]dic["备注"] = data[18]print(dic)li.append(dic)json.dump(li, open("ticket_" + file_name + ".json", "w", encoding="utf-8"), ensure_ascii=False) if li else print("很抱歉,当前未找到从{} 到{} 的列车。".format(from_city, to_city))time.sleep(2)# 关闭浏览器,退出浏览器driver.close()driver.quit()get_ticket()

本文发布于:2024-01-31 19:06:08,感谢您对本站的认可!

本文链接:https://www.4u4v.net/it/170669916930695.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:火车票   操作
留言与评论(共有 0 条评论)
   
验证码:

Copyright ©2019-2022 Comsenz Inc.Powered by ©

网站地图1 网站地图2 网站地图3 网站地图4 网站地图5 网站地图6 网站地图7 网站地图8 网站地图9 网站地图10 网站地图11 网站地图12 网站地图13 网站地图14 网站地图15 网站地图16 网站地图17 网站地图18 网站地图19 网站地图20 网站地图21 网站地图22/a> 网站地图23