ITPub博客

首页 > 数据库 > 数据库开发技术 > 假期必备!!!12306抢票脚本

假期必备!!!12306抢票脚本

原创 数据库开发技术 作者:麻了秃头 时间:2024-04-22 18:26:28 0 删除 编辑

FOCUS ON US
点击蓝字.关注我们

前言:马上就要迎来假期了,大家想好了要去哪里玩了吗?我们无论是出去玩还是回家,避免不了抢票这个环节,那今天呢,就来给大家演示一下,怎么利用Python去完成全自动的抢票。

请注意,编写或使用抢票脚本可能违反相关网站的服务条款和法律法规。以下内容仅供学习和了解技术原理之用,不鼓励或支持任何违反规定的行为。


涉及步骤

  • 登录:使用Python的requests库模拟登录12306网站,获取登录后的Cookie。

  • 查询余票:定期发送请求到12306的余票查询接口,检查所需车次的余票情况。

  • 提交订单:一旦检测到有余票,立即提交订单请求。

  • 支付订单:在订单提交成功后,进行支付操作。



以下是一个非常简化的Python脚本示例,用于说明抢票脚本的基本逻辑:

import requestsimport time # 12306登录后的Cookiecookie = '你的12306登录Cookie' # 余票查询URLquery_url = 'https://kyfw.12306.cn/otn/leftTicket/queryZ?leftTicketDTO.train_date=2023-04-30&leftTicketDTO.from_station=SHH&leftTicketDTO.to_station=BJP&purpose_codes=ADULT' # 提交订单URLorder_url = 'https://kyfw.12306.cn/otn/confirmPassenger/initDc' # 列车信息train_info = {    'train_no': '列车号',    'from_station_telecode': '始发站电报码',    'to_station_telecode': '终点站电报码',    'start_train_time': '开车时间',    'arrive_train_time': '到达时间',    'second_date': '次日标识'} # 乘客信息passenger_info = {    'passengerTicketStr': 'T123456789012',    'passengerName': '乘客姓名',    'passengerType': '乘客类型',    'mobileNo': '手机号',    'passengerIdType': '证件类型',    'passengerIdNo': '证件号码',    'insure': '是否购买保险',    'preferential': '优惠票类型'} # 发送余票查询请求def query_tickets():    headers = {'Cookie': cookie}    response = requests.get(query_url, headers=headers)    data = response.json()    return data # 提交订单def submit_order():    headers = {'Cookie': cookie}    response = requests.post(order_url, json=passenger_info, headers=headers)    return response.json() # 主函数def main():    while True:        data = query_tickets()        if 'data' in data and data['data']['result'] == 'true':            print("有余票,开始提交订单...")            order_data = submit_order()            if 'result' in order_data and order_data['result'] == 'true':                print("订单提交成功,请尽快支付。")                break        time.sleep(5)  # 每隔5秒查询一次 if __name__ == '__main__':    main()

实现案例

教学案例
完整代码在文末


请注意,这个脚本仅用于演示目的,实际的12306抢票脚本会更加复杂,并且需要处理验证码、登录验证、异常处理等问题。此外,12306网站可能有反爬虫机制,自动化脚本可能会被检测并封禁账号。在使用任何自动化工具之前,请确保你了解并遵守相关的法律法规和服务条款。


看看这

说在最后

       

  • 更多资料请关注本公众号,博主将不定期分享免费好物,如果你觉得本期分享对你有帮助,就请帮忙三连->.<-

  • 如需各类系统设计的小伙伴也可以联系私信我,联系方式在聊天窗口

以下是对你具有帮助的几篇文章

往期回顾

#

毕设、工作、日常生活必备工具

#

学生党必备!免费查重、降重、开题报告、答辩技巧

#

毕设、课设有了它必过!

#

计算机系统运行教程

#

两天完成初稿!!!

#

PHP-MYSQL图书管理系统(附源码免费)

#

免费的 ChatGPT 网站(六个)

如需完整案例源码可在公众号回复“Python12306”

原文作者:麻了秃头;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2023-05-05

  • 博文量
    76
  • 访问量
    83407