本文将介绍如何用 Python 语言实现 12306 自动预定列车票,也就是坊间常说的“抢票”,但个人觉得,这不算是“抢”,只不过是一定程度的自动化。
总体设计
所谓抢票软件,本质上就是基于浏览器驱动,实现登录、预定、确认信息的自动化。购买列车票涉及4个网页,相应的基本流程如下:
- 登录:输入用户名、密码,识别验证码,点击“登录”;
- 基本信息填写:出发地,目的地,出发日期,车票类型(普通或学生),车次类型选择,点击“查询”,如果目标车次尚有余票则点击“预定”,否则再次点击查询……;
- 订单信息填写:乘车人选择,席别选择,票种选择,点击“提交订单”;
- 订单确认:选择座位位置,点击“确认”。