前言

中秋三天假期刚刚过去,很多人也像我一样回味无穷吧吗,感觉不过瘾。没关系紧接着就是十一大长假,不同于以往的三天假期,十一假期足足有五天的时间,甚至七天的假,可以好好的出去玩几天。面对国内如此多的旅游地点,去哪里也是一个难以抉择的问题。

今天给大家分享一个利用低价机票的提示器。每天定时的为大家分享关于低价机票的分享,如果大家不知道去哪里玩,但是刚好看到有心动的低价机票,不如就来一场说走就走的旅行,度过美好的五一小长假吧。

01.程序展示

通过程序的抓取和钉钉的提醒,可以方便大家每天在指定的时间间隔下收到关于低价机票的提醒,

02.程序讲解

通过上面的视频展示,让大家对于整个程序的执行效果有了直观的了解和认识,接下来,我们来按照程序的思路理清程序的执行过程,程序的设计主要分为以下的三个步骤,分别是:

  • 低价机票数据的抓取

  • 钉钉机器人的设置

  • 程序定时执行

03.低价机票数据的抓取

对于低价机票数据的抓取,这里程序抓取的是去哪儿网的低价机票数据信息,网址为:http://flight.qunar.com/site/lplist.htm,如下图所示:

​​

在去哪儿网的首页信息中,每天都有一些关于国内低价机票的分享。通过在界面上方选择出发城市,可以筛选不同城市的低价机票信息。对于该数据的抓取,需要分析网页的数据获取方式,其实不难,具体如下:

​上图中,通过开发者模式下的Network中,找到以qdclowprice开头的json文件,就可以看到对应的数据信息。通过对于json文件的Headers信息进行查看,可以发现,json数据获取的数据接口如下所示:

​其中关键词city指的是出发城市,date表示的是票价查询的日期。明白接口接口的构造方式后,接下来就可以开始程序的编写了,如下图所示:​​​

上图的函数中,首先通过构造请求链接,获取得到json数据,然后通过正则化匹配的方式,提取得到低价票的列表信息,最后将列表信息构造为字符串,保存到messages列表中去。

04.钉钉机器人的设置

利用钉钉机器人,可以自动化的提醒用户低价票的信息,钉钉机器人的设置需要大家首先在PC端下载并安装钉钉软件,然后在指定群中添加智能聊天助手,选择添加机器人,并来到下图的界面,选择自定义机器人。​​​

设置好自定义机器人之后,便可以通过程序来使用钉钉机器人向指定聊天群中发送信息,大家需要首先安装dingtalkchatbot库,安装的命令就是大家非常熟悉的pip install dingtalkchatbot的安装程序。运用钉钉机器人进行文本发送的程序如下图所示。​​​

程序中首先构造了一个顶顶机器人对象,然后通过send_text函数将前面程序获得的messages列表信息发送到群里去,其中is_at_all=True表示的是机器人会艾特群里的所有人。

需要完整视频代码:点这里获取

05.程序定时执行

对于程序的定时执行,利用的threading库中的Timer类定时器,程序通过在PlaneTicket函数中,不断的重复构造定时器,并执行PlaneTicket函数,来达到程序不断的定时执行的目的。程序如下图所示。

​​

总结

以上就是小编今天为大家带来的,利用顶顶机器人进行定时低价机票查询的小案例,Python就是这么有趣,看千遍读万遍,不如自己动手敲一边,有兴趣的同学赶紧操练起来吧!

马上就要十一大长假了!还没订好机票?用Python写了一个钉钉订低价票脚本!相关推荐

  1. 计算机专业大二寒假还没入门,关于考研的入门问题我是一个大二的

    我给你弄了一些相关资料,一部分是我写的,一部分是网上找到的,希望对你有用. 1.明确自己考什么学校什么专业,弄清出招生简章里说得清清楚楚的考试范围,将资料准备全(历年试卷,教材,一些参考书) 2.不要 ...

  2. 明天就要离开拉,还没准备好怎么开始

    离开,或许是最好的解决办法吧,没什么好说的,也不用解释什么,.. 教训 ,把公司事情和私人事情分开,不论在什么时候.

  3. 我用Python写了一个邮箱脚本发给班花,没想到事情闹大了...

    大家好,我是辣条. 前言 开学没多久,事又多正愁缺写博客的素材,这不马上就来了,憨憨室友又要整活 ,看在友(红)情(包)的份上必须帮忙. 我起初的想法是通过邮箱发送表白代码指令,打包成执行文件,但是不 ...

  4. vant-weapp,一坨还没煮熟的大便!

    我在之前写过一篇吐槽钉钉小程序的文章,没想到这世上竟然还有比钉钉小程序更恶心的东西,人家钉钉小程序抄微信是正在抄,文档还没更新,你TMD就是写都没写完就发出来给人用. 我不是建议各位写小程序不要用va ...

  5. 我的世界java版如何装mod_我的世界考古“初代贝爷生存”?开局3滴血,还没进游戏就要自闭了...

    问:我的世界 史上最困难的一个模组是什么?可能你想到了那个变态的RLCraft,加入了口渴.温度.技能等一系列变态的生存设定.又或者你想到了所谓的"贝爷生存",那个开局只有3颗血量 ...

  6. JAVA偏向锁的什么时候释放_​java偏向锁,你还没上车,它就要被去掉了

    java偏向锁,你还没上车,它就要被去掉了 StringBuilder真的比StringBuffer要快吗 我之前写过一个贴子,说StringBuffer就是一个伪线程安全类,一石激起千层浪,好多同学 ...

  7. 生活有时会有点苦涩——一位第六年还没发paper的PHD的自述

    公众号关注 "视学算法" 设为 "星标",DLCV消息即可送达! 来自 | 知乎 作者丨少十七 来源丨https://www.zhihu.com/questio ...

  8. 如果你还没入职,那么你必须看我的这个入职vlog[教你快速成长为职业人]

    首先,这篇文章是写给那些马上要步入职场或者还没步入职场的小白的. 我写这篇文章的目的,不会太多的去给你灌输离大家很遥远的什么职业规划啊一类的,我会告诉大家怎么能快速的适应环境,怎么能快速发挥自己价值, ...

  9. 年前裸辞,至今工作还没着落,在家里发慌,该如何找到心仪工作?

    分享职场生活.职场攻略.领导同事相处技巧和创业资源 文|洪生鹏 01 年前因为种种原因,我辞职了,办理好离职手续后,看着离职证明盖着鲜红的公司印章,想想不用做这个项目做一点那个项目做一点的繁琐工作了; ...

最新文章

  1. MATLAB_图形学_形态学课程_找出薛之谦的歌词所有字数
  2. 访问者(Visitor)模式
  3. 51Nod - 1183 编辑距离
  4. su切换到oracle后怎么退出,linux下启动oralce和关闭oracle以及数据库实例化
  5. 修改Typora的快捷键【markdown软件】
  6. bzoj4195 [Noi2015]程序自动分析
  7. c 语言动态增加字符串长度6,【分享】C语言动态长度字符串
  8. eatwhatApp开发实战(二)
  9. :layout_gravity gravity
  10. UE4 视频播放打包Pak内
  11. JMH在性能测试中的使用
  12. 软件测试用什么cpu,给你的CPU做体检!主流CPU测试软件使用宝典
  13. Matlab GUI编程技巧(八):uitoolbar在图窗中创建工具栏
  14. WIN10下配置Yolov3(VS2019,GPU)+opencv训练自己的数据集(绝对详细,小白型记录)
  15. matlab之计算排列组合
  16. python跑酷游戏源码_HTML5游戏实战(1):50行代码实现正面跑酷游戏
  17. 【Unity】Post-process后处理之Grain
  18. 沙扬娜拉--靠!今天怎么了,成了诗人?!
  19. 数据结构与算法分析C++语言描述(第四版)图论学习记录
  20. vmware workstation虚拟机无法连接网络

热门文章

  1. 像素焦距与毫米焦距转换
  2. 适合中学生看的英文电影
  3. 国内各省市有关中小学少儿编程进展(节选)
  4. MySQL语句-查看当前数据库有哪些表(SHOW TABLES)
  5. Excel如何将商品名称中的商品型号提取出来
  6. 知名卸载软件Revo Uninstaller Pro挑战Deep Freeze卸载动画视频教程
  7. 企业微信的消息如何在个人微信上读取?
  8. 【安全知识分享】重磅|雨季安全生产教育.pptx(附下载)
  9. 深入理解计算机系统(第二版)第四章知识整理
  10. 主流压缩软件压缩率实测(图文详解,揭秘你不知道的)