简单12306抢票代码
- 利用selenium进行抢票
- 知识点selenium
- ‘stations.csv’ 文件,就是目前你铁路开设的站点和他们代码信息,通过代码将站点信息传送给网页,文件链接,提取码:je47
- 初始化站点:因为出发点和目的地的值是有固定选项的,而传的值value是有独特的代码,所以我们要找到全部代码,能满足将中文输入的地址,返回相应的代码,同时该标签是hidden类型,不能直接用send_keys()
- 但是selenium速度慢,如果追求速度更快的话还是找到动态网页的接口更好
import csv
from selenium import webdriver
import time
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC
from selenium.common.exceptions import NoSuchElementException
from selenium.webdriver.support.ui import Select
driver = webdriver.Chrome()
# 面向对象来实现 哪一个方面需要补充了 复习了 总结了 踏踏实实
# 类是一个创建对象的对象 希望必须做一些事情 不做这个类就创建不成功 0 - 1 1 -2 1 -100
class TrainSpider(object):
login_url = 'https://kyfw.12306.cn/otn/resources/login.html' # 登录的url
personal_url = 'https://kyfw.12306.cn/otn/view/index.html' # 个人中心的url
left_ticket_url = 'https://kyfw.12306.cn/otn/leftTicket/init?linktypeid=dc' # 车次以及余票查询
confirm_passenger_url = 'https://kyfw.12306.cn/otn/confirmPassenger/initDc' # 乘客信息
def __init__(self,from_station,to_station,train_data,trains,passengers):
'''
:param