python实现12306火车票查询器


Posted in Python onApril 20, 2017

12306火车票购票软件大家都用过,怎么用Python写一个命令行的火车票查看器,要求在命令行敲一行命令来获得你想要的火车票信息,下面通过本文学习吧。

Python火车票查询器

python实现12306火车票查询器

接口设置

先给这个小应用起个名字吧,既然及查询票务信息,那就叫它tickets

我们希望用户只要输入出发站,到达站以及日期就让就能获得想要的信息,所以tickets应该这样被使用:

$ tickets from to date

python实现12306火车票查询器

最终 $ tickets [-gdtkz] from to date

开发环境

用virtualenv建立虚拟环境,用Python3开发,

$ virtualenv -p /usr/bin/python3 venv

通过下面的命令激活它:

$ . venv/bin/activate

解析参数

Python有很多写命令行应用的工具,我们选用docopt这个简单易用的工具,我们先安装它:

$ pip3 install docopt

docopt可以按我们在文档字符串中定义的格式来解析参数,

python实现12306火车票查询器

python实现12306火车票查询器

获取数据

python实现12306火车票查询器

https://kyfw.12306.cn/otn/lcxxcx/query?purpose_codes=ADULT&queryDate=2016-07-01&from_station=SHH&to_station=BJP

python实现12306火车票查询器

https://kyfw.12306.cn/otn/resources/js/framework/station_name.js?station_version=1.8955

保存stations.html

python实现12306火车票查询器

python实现12306火车票查询器

python实现12306火车票查询器

python实现12306火车票查询器

显示结果

prettytable这个库可以让我们它像MySQL数据库那样格式化显示数据

$ pip3 install prettytable

python实现12306火车票查询器

以上所述是小编给大家介绍的python实现12306火车票查询器,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Python 相关文章推荐
python基础教程之缩进介绍
Aug 29 Python
Python函数中*args和**kwargs来传递变长参数的用法
Jan 26 Python
详解Python网络爬虫功能的基本写法
Jan 28 Python
Python实战小程序利用matplotlib模块画图代码分享
Dec 09 Python
python 实现判断ip连通性的方法总结
Apr 22 Python
Python使用pandas处理CSV文件的实例讲解
Jun 22 Python
TensorFlow用expand_dim()来增加维度的方法
Jul 26 Python
解决Python print输出不换行没空格的问题
Nov 14 Python
python经典趣味24点游戏程序设计
Jul 26 Python
用Python调用win命令行提高工作效率的实例
Aug 14 Python
Pytorch之parameters的使用
Dec 31 Python
Django中的session用法详解
Mar 09 Python
Python编程修改MP3文件名称的方法
Apr 19 #Python
Python实现将罗马数字转换成普通阿拉伯数字的方法
Apr 19 #Python
Python连接SQLServer2000的方法详解
Apr 19 #Python
Django自定义插件实现网站登录验证码功能
Apr 19 #Python
Python列表切片用法示例
Apr 19 #Python
Python编程判断这天是这一年第几天的方法示例
Apr 18 #Python
Python编程实现输入某年某月某日计算出这一天是该年第几天的方法
Apr 18 #Python
You might like
新手配置 PHP 调试环境(IIS+PHP+MYSQL)
2007/01/10 PHP
php下图片文字混合水印与缩略图实现代码
2009/12/11 PHP
通过Email发送PHP错误的方法
2015/07/20 PHP
使用PHP处理数据库数据如何将数据返回客户端并显示当前状态
2016/02/16 PHP
jquery 获取dom固定元素 添加样式的简单实例
2014/02/04 Javascript
jquery获得同源iframe内body下标签的值的方法
2014/09/25 Javascript
js实现文本框支持加减运算的方法
2015/08/19 Javascript
js html5 css俄罗斯方块游戏再现
2016/10/17 Javascript
javascript判断元素存在和判断元素存在于实时的dom中的方法
2017/01/17 Javascript
详解如何使用Vue2做服务端渲染
2017/03/29 Javascript
Vue中使用vee-validate表单验证的方法
2018/05/09 Javascript
微信小程序动态增加按钮组件
2018/09/14 Javascript
JavaScript设计模式之命令模式实例分析
2019/01/16 Javascript
VUE 实现复制内容到剪贴板的两种方法
2019/04/24 Javascript
vscode 配置vue+vetur+eslint+prettier自动格式化功能
2020/03/23 Javascript
vue实现div可拖动位置也可改变盒子大小的原理
2020/09/16 Javascript
在Python的Django框架中编写编译函数
2015/07/20 Python
python 按不同维度求和,最值,均值的实例
2018/06/28 Python
python使用pymongo与MongoDB基本交互操作示例
2020/04/09 Python
Django数据结果集序列化并展示实现过程
2020/04/22 Python
python 轮询执行某函数的2种方式
2020/05/03 Python
你应该知道的Python3.6、3.7、3.8新特性小结
2020/05/12 Python
python 使用tkinter+you-get实现视频下载器
2020/11/17 Python
使用css创建三角形 使用CSS3创建3d四面体原理及代码(html5实践)
2013/01/06 HTML / CSS
美国沃尔玛网上超市:Walmart
2020/08/14 全球购物
.net软件工程师面试题
2015/03/31 面试题
职业女性的职业规划
2014/03/04 职场文书
大学生职业生涯规划书汇总
2014/03/20 职场文书
校庆活动方案
2014/03/31 职场文书
开学典礼策划方案
2014/05/28 职场文书
法院授权委托书范文
2014/08/02 职场文书
机械工程及其自动化专业求职信
2014/08/08 职场文书
导游词之上海东方明珠塔
2019/09/25 职场文书
canvas多重阴影发光效果实现
2021/04/20 Javascript
关于Python使用turtle库画任意图的问题
2022/04/01 Python
Linux中一对多配置日志服务器的详细步骤
2022/07/23 Servers