littlebot
Published on 2025-04-15 / 2 Visits
0

【源码】基于Python的12306火车票自动预订助手

项目简介

本项目是基于Python开发的12306火车票自动预订助手。利用Python强大的网络请求和数据处理能力,与12306票务系统交互,实现自动登录、余票查询、订单提交等购票操作。同时集成了验证码识别、邮件及server酱提醒等功能,并采用代理IP和CDN加速技术,提升系统稳定性与效率,助力用户便捷购票。

项目的主要特性和功能

  1. 自动登录:自动填写用户名和密码登录12306系统,支持验证码自动识别。
  2. 余票查询:根据出发站、到达站、乘车日期等条件,自动查询火车票余票信息。
  3. 订单提交:查询到余票后,自动提交订单,支持选择座位类型和乘客信息。
  4. 验证码识别:借助打码平台,自动获取并识别登录及订单验证码。
  5. 通知功能:支持配置邮箱和server酱提醒,订单提交成功后及时通知用户。
  6. 加速技术:利用代理IP和CDN加速,提高系统稳定性与效率,规避反爬策略。

安装使用步骤

安装依赖库

  • Windows:在命令行中执行pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt
  • Linux
  • root用户:执行python2 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt,避免多python环境产生问题。
  • 非root用户:执行sudo python2 -m pip install -i https://pypi.tuna.tsinghua.edu.cn/simple -r requirements.txt,避免安装和运行时使用不同环境。

配置参数

修改config/ticket_config.yaml文件,按提示更改所需信息,如用户名、密码、邮箱等。配置时注意空格并遵循yaml语法格式。可配置邮箱(也可不配置),推荐配置server酱提醒,配置教程

运行程序

  • 常规启动
  • Linux:运行根目录sudo python run.py,因新增对时功能,务必用sudo执行,否则会报权限错误。
  • Windows:打开IDE或者CMD请用管理员身份执行python run.py,无需加sudo
  • 使用docker-compose启动(需已安装docker与docker-compose)docker.sh脚本对此进行了封装,可通过以下命令操作:
  • sudo ./docker.sh run:创建一个镜像并启动容器,若镜像已创建则直接启动容器。
  • sudo ./docker.sh restart:修改配置文件后,通过此命令重新加载容器运行。
  • sudo ./docker.sh rm:删除容器。
  • sudo ./docker.sh drun:后台运行容器。
  • sudo ./docker.sh logs:后台运行时,通过此命令查看运行内容。
  • docker安装脚本(仅适用于centos7)sudo ./docker_install_centos.sh

下载地址

点击下载 【提取码: 4003】【解压密码: www.makuang.net】