【转】selenium自动化脚本--12306买票

--coding:utf8--

import time
from selenium import webdriver

运行chrome,打开浏览器

driver =webdriver.Firefox()

设置浏览器窗口

driver.set_window_size(1080,800)

设置全局操作时间

driver.implicitly_wait(10)

打开网址

driver.get(‘https://kyfw.12306.cn/otn‘)

睡五秒自动选择验证码

time.sleep(5)

driver.find_element_by_id(“username”).click()
driver.find_element_by_id(“username”).send_keys(“[email protected]”)
driver.find_element_by_id(“password”).send_keys(“*“)
print(“continue”)
time.sleep(15)

driver.find_element_by_link_text(“车票预订”).click()
time.sleep(5)

出发地选择

driver.find_element_by_id(“fromStationText”).click()

setTimeout(function(){debugger;}, 5000)

driver.find_element_by_css_selector(u”[title=广州]”).click()

time.sleep(5)

目的地选择

driver.find_element_by_id(“toStationText”).click()
driver.find_element_by_css_selector(u”[title=北京]”).click()
time.sleep(5)

出发日期选择

driver.find_element_by_id(“train_date”).click()
driver.find_element_by_css_selector(“body > div.cal-wrap > div:nth-child(1) > div.cal-cm > div:nth-child(24) > div”).click()
time.sleep(5)

车型选择

driver.find_element_by_css_selector(“#_ul_station_train_code > li:nth-child(1) > label”).click()
time.sleep(5)

while True:
try:
driver.find_element_by_id(“query_ticket”).click()
e=driver.find_element_by_id(“SWZ_6i00000G720F”)
e.click()
if e.text in [u’无’,’–’]:
print (“nono”)
time.sleep(1)
else:
print(“yes”)
# 购票
driver.find_element_by_link_text(“预订”).click()
# 乘车人选择
driver.find_element_by_css_selector(“#normal_passenger_id > li:nth-child(1) > label”).click()
# 学生票确认(不是学生可去掉)
driver.find_element_by_link_text(“确认”).click()
# 提交订单
driver.find_element_by_link_text(“提交订单”).click()
driver.find_element_by_link_text(“确认”).click()
except:
pass

猜你喜欢

转载自blog.csdn.net/cqupt_zl/article/details/80962584