吉祥航空随心飞刷票工具循环查票工具
2021-04-16 吉祥航空最近修改了 API, 其实改动不多并且 field 都和以前一样的名称 (很神奇的, 以前都是 CamelCase Naming 新的 API 全部变成了 UpperCase Naming, 这个操作毫无意义并且完全是在浪费时间, 不太能理解这个操作的缘由, 可能是完整切换了另一个版本), 我没有购买新一期随心飞无法调试, 以后等我有机会写一个刷普通票的工具吧
Github: https://github.com/szhshp/Juneyao_Airline_Helper
2021-01-05 添加了航班 Filter 使用更方便啦
免责声明
请求过多导致封号属于用户活该操作, 与本人无关 😏
代码声明
这个就是我花 1h 随手写的小工具, 追求快速达到功能而不会考虑任何的扩展性, 健壮性及专业性
- 安装依赖:
yarn
- 设置查询参数
- 执行脚本:
yarn start
- 偶尔单个请求失败不用在意, 他们服务器本来就不太好
- Finger crossed and wait for good news !
如果发现有余票那么会弹 Alert 通知:
打开浏览器, 到吉祥航空的子页面登陆: https://m.juneyaoair.com/#/home
F12 打开 Developer Tools, 浏览器页面找到搜索随意搜索一次余票, 于 Network Tab 寻找一个 host URL 为 https://m.juneyaoair.com/server/v2/flight/AvFare
的 request, 查看 payload 会发现以下 fields:
blackBox: "eyJ2IjoiNGh123456789123456789123VYTTNQblgrOEZHMDhXTzZ2UXJEcVQrTUJxUHhaMUFWSXF5UFgyVlQzNCIsIm9zIjoid2ViIiwiaXQiOjg==" ffpCardNo: "123456789" ffpId: 123456789 loginKeyInfo: "123456789123456789123456789"
将这部分内容 copy 到 /data/config.js
, 放到 payloadConfig 对象下方
然后到 /data/payload.js
里面填写需要请求的 出发地
, 目的地
, 出发时间
:
const presetSetionData = [ { // (必填) 目的地 arrCode: 'CAN', // (必填) 出发地 sendCode: 'SHA', // (必填) 起飞时间, 按照 YYYY-MM-DD 格式输入, 可以设置多个 departureDate: ['2021-01-15'], // (选填) 航班编号, 如果不设置此列则获取所有航班, 否则只获取这一列提供的航班 flightCode: ['HO1077', 'HO1037'], // (选填) 弹窗通知时的提示文字, 可以自由输入 comments: '广州去程机票', }, /* 可以设置多组数据, 不过切记每个日期会当做一次请求 */ /* 这一组没有限制 flightCode */ { arrCode: 'WUH', sendCode: 'SHA', departureDate: ['2021-01-15'], }, { arrCode: 'SHA', sendCode: 'WUH', departureDate: ['2021-01-17'], flightCode: ['HO1074'], comments: '哈哈哈抢到票了', }, ];
根据测试得到以下因素:
- 1h 可以
大概发送 1000 次请求 - 一个地点一个日期只需请求一次即可获得当天所有航班
可以得出:
一分钟内可以请求 12 次
- 即 3 个 地点在 4 个日期的余票
- 或者 4 个地点在 3 个日期的余票
也就是说, 你一次可以同时请求:
上海 - 南京
, 南京 - 北京
, 北京 - 哈尔滨
在 12 月 1 日 - 12 月 4 日
的全部随心飞余票航班
通过 data/config.js
来设置请求频度 :
// 每 30 sec 请求 6 次 times: 6, duration: 30,
关于本文
文章标题 | 吉祥航空随心飞刷票工具循环查票工具 |
发布日期 | 2020-09-13 |
文章分类 | Tech |
相关标签 | #Travel #Tech |
留言板
PLACE_HOLDER
PLACE_HOLDER
PLACE_HOLDER
PLACE_HOLDER