找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4404|回复: 0

[服务器] vps+python实现24小时机票监控,折扣机票即时通知

[复制链接]
发表于 2021-5-10 21:31:12 | 显示全部楼层 |阅读模式 来自 中国–湖北
python 是一门简单易用的编程语言,vps 是一台带独立 ip 的私人服务器。如果两者结合,常常可以通过少量工作量,实现一些有趣的小工具、提高工作效率、节省人力成本等。如通过 vps+python实现机票监控,微博动态监控,QQ 机器人微信机器人等。今天介绍的是实现二十四小时不间断的机票监控,如果出现了低价折扣机票,第一时间邮件通知你本人。对于常常出差或旅游的人来说,可以节约不少机票钱。
准备环境
一台 vps。因为是要 24 小时不间断的运行脚本,建议选择较为稳定的 vps,对主机硬件配置几乎没啥要求。推荐使用 vultr 的基础款云服务器,月付 5 美元,均采用千兆带宽、SSD 硬盘,稳定性有保障,按小时计费,随用随停,且支持支付宝付款。而且 vultr 现在还有注册送 100 美元的活动,参考:VULTR 2020 年优惠,新用户直接送 100 美元,附额外领 3 美元教程
推荐阅读:月付不到 3 刀的便宜 VPS 主机最全盘点
月付 3-7 刀,质量口碑保证,网络线路优秀的 vps 盘点

Vps 上部署 python 环境。我用的系统是 ubuntu14.04,自带 python 2.7.
个人邮箱设置,配置 stmp。因为一旦监控到特价机票,会通过 stmp 发送邮件。需要用到一个个人邮箱,在个人邮箱中的 stmp 中配置即可。我用的是 163 邮箱,在设置->POP3/SMTP/IMAP 中,选择客户端授权密码,生成一个密码,这个密码是我们必须记住的,在脚本中会使用到。
到这里,我们准备一台有 python2.7 运行环境的 vps、用来发邮件的邮箱号和该邮箱的 stmp 授权密码。
实现原理介绍
去哪儿对外开放了航班查询接口,如下形式:http://ws.qunar.com/holidayService.jcp?lane=武汉-南京,表示近期武汉到南京所有航班信息,包括日期、价格、折扣等。通过 python 脚本每 10 秒钟查询解析航班信息,一旦查询到有符合自己的航班,立即以邮件的形式发送通知。是通过 python 内置的 stmp 发送的邮件。需要一个发送邮件箱并配置 stmp,还需要一个邮箱专门用来接收邮件。
代码如下,有兴趣的同学可以研究下
代码链接:https://gitee.com/jaaazzz/codes/biu3ln8tp2ejyv57cqa1649
脚本部署及配置
以上脚本有几个地方是需要自己配置的
1 配置 stmp 发件箱
在 218-220 行的 mail_host 、mail_user、mail_pass,分别是发件箱的 stmp 服务器、发件箱地址以及发件箱的 stmp 密码。在准备环境中有生成步骤。
2 配置接收通知的邮箱
在 244 行的 email_li,设置收通知的邮箱
3 配置监控哪个时间段的航班
见 248 行
4 配置航班的起止地址,折扣等
见最后一行

脚本运行前需要安装 python 的 lxml 扩展,命令行执行
Pip install lxml

效果展示
效果还是很不错的,很实用

发帖求助前要善用【论坛搜索】功能,那里可能会有你要找的答案;

如何回报帮助你解决问题的坛友,好办法就是点击帖子下方的评分按钮给对方加【金币】不会扣除自己的积分,做一个热心并受欢迎的人!

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则 需要先绑定手机号

关闭

站长推荐上一条 /1 下一条

QQ|侵权投诉|广告报价|手机版|小黑屋|西部数码代理|飘仙建站论坛 ( 豫ICP备2022021143号-1 )

GMT+8, 2024-12-23 18:15 , Processed in 0.050640 second(s), 9 queries , Redis On.

Powered by Discuz! X3.5

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表