手机版

Node.js实现抢票小工具短信通知提醒功能

时间:2021-09-01 来源:互联网 编辑:宝哥软件园 浏览:

在深圳工作是很痛苦的,尤其是在我工作的科兴科技园。每天都有很多人去上班,就像春节旅游高峰一样。如果能换成以前在大冲工作,我会很开心。很遗憾,我不能。

特别是这个站有很多公交车在等我,上班的时候公交车也不挤。公共汽车满员时,只有少数人能使劲挤。通常我只用两个字来形容这种人:“公交怪兽”

我以为我的朋友瘦得像猴子一样,可以上去。我的身高是182公斤,体重是72公斤。这不是问题。我反手被挡,闷声发大财。阿姨在我面前,快点,别发牢骚,快点,阿姨,嗯?你还想挤掉我吗?你能把我挤出来吗?你可以把我挤出去!我在那里!把车吃了!

.

咳咳,挤公交是不可能的,因为今天找到了一个可以定制路线的网络公交微信官方账号【深圳xxx】

然而,票经常被抢。同时,我也发现有时候人们会退票。这个时候,有免费的票。关键是我不能一直盯着微信官方账号,所以写了一张票。短信通知小工具

获取接口信息

1.检查页面结构

这是预订页面,显示当月的机票状态。根据图表,红色是满的,绿色是购买的,灰色不是可选的

如果是可选的,就是一个白色的小方块,剩下的选票显示在下面,如下图所示:

我们要这么做,

定期抓取返回的界面信息根据界面返回值判断是否有更多的票,查看源代码查看界面信息等。微信浏览器无法查看源代码,所以,

2.用chrome调试微信微信官方账号网页

首先,有一个问题。如果直接复制微信官方账号网页的Url在chrome中打开,会显示此屏幕。他被302重定向到这个页面,所以它不会工作。只有获得OAuth2.0授权才能进入。

因此,我们在访问微信微信官方账号网站时,首先要使用抢包工具,了解需要携带哪些信息。这个时候我们就要用抢包工具了,因为我的电脑是Mac,我不能用Fiddler,我用的是Charles花瓶,也就是下面这个人。

有了这个工具,我们只需3步就能轻松捕获手机数据:

获取这台机器的IP地址和端口设置。执行以上两个步骤2-1,依次获取这台机器的IP地址和端口

第一步是找到端口号,默认情况下一般是8088。但是,为了确认,您可以打开代理/代理设置。哦,我之前设置的是8888。

然后找到Charles的帮助/本地IP地址,点击查看自己的本地地址,找到本地地址并写下来,然后进行下一步

2-2设置代理手机上网

首先确定手机连接的电脑是同一个wifi,然后wifi设置里会有设置代理信息,比如我的猴子饭.不是,小米9手机!设置如下:

输入在上一步中获得的主机名,端口号就可以了

输入完成后,单击确定。查尔斯会弹出一个对话框,询问你是否同意访问代理。只需单击确定允许。

2-3用手机访问目标网页

用我们的手机访问微信微信官方账号【深圳X旅行】进入抢票页面后,发现查尔斯成功抓取了网页信息。当我们进入抢票页面时,他会发起两个请求,一个获取文档内容,另一个获取门票信息。

仔细分析后,我大概明白了业务逻辑:

整个项目的技术站是传统编写的java jsp。用户认证主要是cookie会话方案,前端主要使用jQuery。

当用户进入页面时,会携带查询参数,如出发地点、时间、车次等信息和cookie请求文档文档,这是圈出的部分。

我们要的核心内容:日历,一开始是不显示的

因为我又要问了

第二个请求携带cookie和上述查询参数,发起post请求,获取当月的车票信息,即日历表的内容

下面一个是询问当月的票信息,但是发现他返回了一堆html节点

好的.估计它在被获取后直接被附加到div,然后被渲染以生成日历表的内容

然后在手机上操作,选择两个日期,然后点击下单,发送购票请求,调出购票界面。我们来看看购票界面的请求和返回内容:

看请求内容,根据字段的含义,大致理解为是路线、时间、购票金额和支付方式

看看返回的内容:返回一个json字符串数据,可能包括成功的返回代码、时间、id号等等

2-4记录所需的信息内容

根据以上分析,总结以下内容:

版权声明:Node.js实现抢票小工具短信通知提醒功能是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。