五月天的票,你抢到了吗

这篇具有很好参考价值的文章主要介绍了五月天的票,你抢到了吗。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、背景

你是否错过了周杰伦的票,最近又没抢到五月天的票,不要太难过,今晚有华晨宇的票,后天还有任贤齐的票,加油哦!

为了帮助你在激烈的抢票竞争中获得更大的成功机会,本文将介绍抢票软件的实现原理以及我所了解的一些抢票方式。但是,请不要过度将希望寄托于抢票软件,它有时也不灵,经过我的验证,即使你用到了抢票软件,也不一定能抢到票。

五月天的票,你抢到了吗

票务平台会经常调整反爬策略打击爬虫行为,如果希望抢票软件保持较高的成功率,是需要开发者针对票务平台的打击策略作出逻辑调整,这个成本是很高的,所以你能随手获得的抢票软件很大概率是抢不到票的或者说是不安全的。

在调研过程发现一个有意思的点 “黄牛的票从来不是抢来的”。相关规定,面向市场公开销售的营业性演出门票数量,不得低于核准观众数量的70%。 而剩下的那 30%,即非公开销售的票,则是黄牛票的主要来源,也叫渠道票。这里面涉及主办方对热门票和冷门票的售票策略,黄牛在这链条中扮演着重要的角色,只要演唱会门票的二级市场不会消失,黄牛就永远不会消失,对于市场本身来说,愿意花更多钱买黄牛票的人,一定是更有需求的人,黄牛不过是市场调节的人格化。

最后一句话原本想写在文末,担心内容过于技术,没有兴趣看到最后。“生活有时很操蛋,我们会感到力不从心,但请守住你的热爱,别让它被挫折磨灭”。祝大家买票的时候都能以正常价格抢到自己心仪的演唱会门票 ~

二、分析购票过程

现在无论是买火车票、飞机票、演唱会票基本都是使用电子支付网上购票,之后得到一张电子票凭证,进场前打印纸质票或者闸机核销票据二维码进场,那么我们从用户角度看下,一次完整的购票过程是什么样。

五月天的票,你抢到了吗

用户的购票流程:

  • 首先用户登录 票务 APP 搜索爱豆的门票,点击查看门票详情,然后选择场次和票档。等待抢票倒计时,才能进入到下一个页面;
  • 倒计时结束后,开抢按钮被点亮,用户进入下一步选择观演人,确认信息后选择付款方式提交订单;
  • 如果手速足够快、运气足够好,抢到了票就会唤起所选的支付方式 APP 提示付款;如果没有抢到则会提示拥堵,跳转到票档选择页面。

下面,我将这个图补充一下,思考下哪些步骤是用户可以提高出票成功率的关键时间节点:

五月天的票,你抢到了吗

很显然,用户在倒计时之前看不到的页面就是竞争手速的关键时机,当这个开抢按钮被倒计时点亮的一瞬间,要以最快的速度点击到达隐藏页面,然后选中观演人,通常使用默认的支付方式,最后提交订单。一旦订单被提交成功,就说明锁定了席位抢到了票。如果用户在规定的时间内未付款,该席位会重新流入票池,捡漏的人就可以抢到。

到这里,我们知道了购票流程和提高抢票成功率的突破口,人的手速肯定没有机器快,接下来介绍下两种常用的技术抢票方案。

三、Selenium 模拟浏览器操作

在使用 Chrome 浏览器,用户可以使用鼠标滑动、按键点击以及键盘输入,作为信号输入设备向浏览器传达指令,浏览器收到指令后执行渲染。

这里提到的 Selenium WebDriver 是对浏览器提供的原生 API 进行封装,使用这套 API 可以操控浏览器的开启、关闭,打开网页,操作界面元素,控制 Cookie。简单说就是,可以通过写代码的方式来自动实现用户鼠标和键盘信号的输入。这么一来,可以做的事就非常多了。

五月天的票,你抢到了吗

下面是一个简单脚本,它首先打开 chrome 浏览器输入 google 的网址,等待 5 秒,浏览器网页打开后,找到输入框输入 ”ChromeDriver“,然后模拟点击搜索按钮,就能看到浏览器上搜索的结果。

import time

from selenium import webdriver
from selenium.webdriver.common.by import By

browser.get("https://www.google.com")
time.sleep(5)
# 查找元素
search_box = browser.find_element(By.NAME, 'q')
# 模拟按键输入
search_box.send_keys('ChromeDriver')
# 搜索框模拟回车
search_box.submit()
time.sleep(5)
# 关闭所有窗口
browser.quit()

回到抢票的主题上来,我们可以使用这种技术能力,写一个 Python 脚本,在本地机器上执行起来。脚本内容是在指定的时间打开浏览器,打开票务网页,然后自动模拟用户选择观影人然后自动提交订单。(在这里我原本很想做一个演示视频,理解起来更直观,奈何时间精力有限,这里就不详细介绍 Selenium WebDriver 开发环境配置,感兴趣的可以继续深挖。)

四、逆向工程:抢票接口

何为逆向,即通过技术手段对票务 APP 的通讯流量抓包,定位 获取票档、提交订单的关键请求解密 https 流量,然后分析解密流量数据。

五月天的票,你抢到了吗

我们继续回到这张图,仔细观察会发现,用户查看门票详情以及选择票档等一些动作都是 APP 上完成的都是提前加载好的,而真正决定用户抢票的是 “提交订单” 这个关键请求。如果我们可以将这个这个请求的流量抓到,然后分析其参数构造规则,就可以编写程序自动发送请求了。

五月天的票,你抢到了吗

下面抓包示例,选取了一个门票,抓包获取了其票档信息。

五月天的票,你抢到了吗

以此类推,抓包 下单接口 观察其参数构成,编写程序模拟用户请求。

# 等待开售
def wait_for_buy():
    # 抢购时间
    start_timestamp = 1686475533
    # 当前时间
    current_timestamp = int(time.time())
    while current_timestamp > start_timestamp:
        # 开始购买
        place_order()

这里简要介绍了下实现思路和方向,不展开逆向过程的细节。具体实现没有这么简单的,有攻击方必然有防守方,票务方为了保障平台方利益,势必会定义打击策略,例如,我们会看到验证码从文字到图片再到滑块验证的一个迭代过程。技术方面是一个问题,法律方面也是一个问题,所以全当一次攻防演练的学习,不要伤害票务方的利益。文章来源地址https://www.toymoban.com/news/detail-479098.html

五、参考资料

  • 北京青年报-黄牛票的主要来源 http://m.cyol.com/gb/articles/2023-05/30/content_YOj5PRCmpZ.html
  • Python 使用 Selenium 实现淘宝抢单的流程分析 https://zhuanlan.zhihu.com/p/269107661
  • 大麦网自动购票 - 开源实现 https://github.com/ClassmateLin/dm-ticket

到了这里,关于五月天的票,你抢到了吗的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Spring data JPA的基本使用把你难到了吗?

    一. 故事背景 最近有已经工作的学员跟文哥聊天,说他刚进公司,人生地不熟,每天工作都是战战兢兢,如履薄冰。本来他觉得自己用的最6的技术就是文哥教给他的Mybatis了,本以为靠着Mybatis就可以养家糊口,赚点血汗钱了。结果发现大家用的都是Spring Data JPA!!!他顿时虎

    2024年02月04日
    浏览(39)
  • <JDBC> 获取数据库连接的五种方式:你真的get到了吗?

    ❤写在前面 ❤博客主页: 努力的小鳴人 ❤系列专栏: JDBC ❤欢迎小伙伴们, 点赞👍关注🔎收藏🍔 一起学习! ❤如有错误的地方,还请小伙伴们指正!🌹 JDBC(Java Database Connectivity)是一个独立于特定数据库管理系统、通用的SQL数据库存取和操作的公共接口(一组API),定义

    2023年04月08日
    浏览(59)
  • NOT IN子查询中出现NULL值对结果的影响你注意到了吗

    开发人员写的SQL语句中经常会用到in,exists,not in,not exists 这类子查询,通常,含in、exists的子查询称为半连接(semijoin),含not in、 not exists的子查询被称之为反连接,经常会有技术人员来评论in 与exists 效率孰高孰低的问题,我在SQL优化工作中也经常对这类子查询做优化改

    2024年03月15日
    浏览(38)
  • 第8节 了解你买的票吗——股东构成

    在股票交易中,了解公司股东构成的 目的 在于: 判断个股是否存在大资金建仓,以进行买进或卖出的操作; 判断个股是否存在大资金大幅度拉升或减仓,以预测个股走势; 判断个股是否有大资金在维护股价,以减少操作风险。 获取所有高管持股数据,也可以根据参数进行

    2024年02月10日
    浏览(34)
  • 五月集训(第30天) —— 拓扑排序

            此为《英雄算法联盟:算法集训》的内容,具体内容详见:知识星球:英雄算法联盟。加入星球后,即可享用星主 CSDN付费专栏 免费阅读 的权益。         欢迎大家积极在评论区留言发表自己的看法,知无不言,言无不尽,养成每天刷题的习惯,也可以自己发

    2024年02月09日
    浏览(36)
  • 随笔 | 写在五月末的这一天

    又要用那个经典的开头:转眼,五月一瞬间就过去了。 仔细回想,五月的三个可以是: 旅行 执行 放空 题外话:昨天一时兴起看了一部有点吓人的美剧,导致我昨天今天以来有点恍惚。看来还是不能因为一时冲动尝试自己不擅长的事情,尤其是看剧。 题外话结束,进

    2024年02月07日
    浏览(44)
  • 五月最近一次面试,被阿里P8测开虐惨了...

    都说金三银四涨薪季,我是着急忙慌的准备简历—— 5年软件测试经验,可独立测试大型产品项目,熟悉项目测试流程... 薪资要求? 5年测试经验起码能要个20K吧 我加班肝了一页半简历,投出去一周,面试电话倒是不少,自信满满去面试,现场被问了这么几个问题——— “会

    2024年02月06日
    浏览(45)
  • 手机厂商“卷”到了手腕上

      配图来自Canva可画 在技术创新、居民购买力增强、消费者需求攀升等多重因素的共同影响下,可穿戴带设备行业实现了快速发展。据中商产业数据显示,中国智能穿戴设备市场规模从2017年的212.6亿元增长至2021年的698.5亿元,年均复合增长率达39%,预计2022年我国智能穿戴设备

    2024年02月09日
    浏览(30)
  • 新机器到了要做的事情

    @运维 一台机器到了,去看看机器情况,小编之前是开发呀,由于种种原因,阴差阳错的做了运维,本以为是应用运维,装装软件看看日志,理想很丰满、现实很骨感呀,好家伙,上来让我检查硬件,这下子慌了神,服务器那是听说过没见过呀。 想到了之前课本上的水手,那

    2024年02月12日
    浏览(37)
  • 为何唐宋诗词鼎盛,而到了明清变成了小说

    我国是一个历史悠久的国家,在漫长的历史长河中,随着朝代的更替,很多事也发生了有趣的变化。 例如唐宋时期盛行的是诗词,而到了明清时代,小说又开始盛行了起来,那么造成这种文风改变的原因是什么呢? 主要原因有两个: 诗歌是我国历史最悠久的瑰宝之一,根据

    2024年02月08日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包