当前位置:首页 > 代码 > 正文

关于火车票按车次查询winform源代码的信息

admin 发布:2022-12-19 18:41 157


本篇文章给大家谈谈火车票按车次查询winform源代码,以及对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

在VB里做了一个火车票的查询系统,想按自己输进去的始发站和终点站查询,但现在只能按 始发站查,

终点站的文本框是什么名啊?假定是Text3:

"SELECT 车次, 始发站, 终点站,发车时间,到达时间,日期,价格 FROM train where 始发站 like '%" Trim(Text2.Text) "%' and 终点站 like '%" Trim(Text3.Text) "%'"

火车票上的编号

车站代码+窗口代码+日期+车票编号+车票编号/车次/车厢座位号/日期等信息经过HASH运算和RSA运算得到的数字串+里程数

火车票左上角是红色字体的票号,通常是由1位英文字母和6位数字组成,例如”B073

903〃,南方一些车站的车票可能是类似”37F004675〃这样的代码,其中的37是售票窗口的

编号。

火车票右上角是发售车站的代码,京A表示北京站,京B表示北京西站,京D表示北京北站

,京E是客票管理中心,京F表示丰台站,京AD表示北京站的代售点,京BD表示北京西站的代售点。

火车票最下方,在条形码的下面有一串数字和字母的组合,其中的含义是:

第1-5位数字表示发售车票的车站代码,例如京B代码是21152,京D代码是12713,清华园

代码是12710。

第6位代表售票点类型,0表示车站售票处,2表示代售点,所以京A售就对应100010,京A

D售对应100012,京B售对应211520,京BD售对应211522,京D售对应127130。

第7-10位数字表示售票窗口的编号。例如清华园售对应1271000001。

第11-14位数字表示出售车票的日期。

接下来几位数字位应该和车票左上角的票号一致。

再接下来是一大串数字,这是校验码。

最后4位数字是车票上起点站到终点站之间的里程,例如Z85次北京到苏州是1379公里,

大家可以根据这个数字看出所购买的通票的里程数,继而判断出经由是否正确。

新版火车票(红版蓝版均通用)

1.最左上角的红色字体为票号,表明对于某台售票窗口或终端连续售票的编号,由字母和6位数字组成。有时字母前方还有数字,一般表示售票窗口编号。这个是一票一号,出现票号相同的几率几乎为零。

2. 始发站和终到站:行程400公里以内为魏碑体,400公里以上为黑体

3.票价后面的车型部分。新票有变化,省略了很多,比如旧版票的“硬座普快”新版票直接为“硬座”。

4.最后重点说下最后一行的数字,新版车票21位数字,取消了以前车票的随机码和里程数。知道了这些数字的意义很容易判断票的真假。

数字意义分别为:

前5位是发售车站代码

在本页底部给出的网址可以查询车站代码;记住你常坐的售票车站的代码很重要。

6,7位为售票方式码,具体内容为:

00 - 09 车站发售;

10 - 19 预约预订;

20 - 29 代售;

30 - 39 自动售票;

40 - 49 备用;

90 - 98 管理;

99 技术维护。

8 – 10位为售票窗口码(非第**售票窗口),售票窗口码编码范围001 - 255。

票窗口码具体内容为:

1 - 200 售票、退票、预约预订窗口;

201 - 255 管理窗口。

对于售票方式码为 20 - 29 的,窗口号通常为代售出编号。

11 – 14位表示财收结帐日期(非买票日期),MMDD格式,4位数字。为收入管理的计算日期,通常在每天下午交班后改为第二天日期。也有部分铁路局错后一天。大体可以认为是购票时间。

15~21位是车票号码,除了I和O以外的大写英文字母 + 6位数字,计7位,票号编码范围A000001 - Z100000。规定每一票卷由1000张票底卷成,票面左上方印有票号。由于部分铁路局还会在左上角的票号前面加印窗口号,票号部分应与客票左上角印刷的票号中字母开始的部分一致。这个也是一票一号。

对于蓝色的磁卡票,最下面的数字的规则同样适用。

补充:那7个数字是什么,我也曾遇到过字母后是7位的票,不过很早了。你把票号和最下面那串数字对一下。一般票号为7位的样式A0123456,而下面那串数字15到21位肯定是A123456。也就是说下面数字串必定是字母加六位数字。

Python 实现一个火车票查询的工具

使用 python 实现一个查询火车票的小工具

主要功能:

输入出发车站,到达车站,时间,然后返回所有的车次信息,和余票信息

支持输入附加选项查询不同的火车的类型,比如高铁,动车。

#查询上海到北京2017-04-25的高铁和动车的车票,-g -d 是附加选项 表示高铁和动车

python3 trains.py -gd 上海 北京 2017-04-25

运行结果:

1. 对12306网站买票过程抓包分析

点击查询之后,通过抓包发现返回了一个json的文件,查看这个文件,就是保存着具体车次的信息。抓包如下图所示。

请求的url 是:

GET /otn/leftTicket/query?leftTicketDTO.train_date=2017-04-20leftTicketDTO.from_station=TJPleftTicketDTO.to_station=TYVpurpose_codes=ADULT HTTP/1.1

发现这个请求使用的是get方法,然后传递了四个参数,一个是出发站,一个是到达车站,一个是成年人or学生,最后一个是时间。如下图:

但是有一个问题是,我输入的是天津到太原,但是这个却转换成了拼音的简称。必须要找到这个转换的字典是什么,这样才能正确的使用这个接口。

在网页的源代码找到这个文件,station_name.js 文件,如下图:

js文件的格式是,如下图,使用的话,必须要想用正则表达式处理一下:

2. 使用正则表达式处理这个js文件

使用正则表达式,将js 文件里面的车站名字和对应的简称提取出来,然后写入到一个station.py 文件里面,作为字典,程序运行的时候,将这个文件以模块的形式包含进去。

关于正则表达式,先占一个坑,以后在详细的写。

正则表达式的代码:

运行的时候:

# 将输出重定向到一个新的文件stations.py里面python3 test3.py stations.py

3. 使用docopt 优雅的完成命令行的输入

docopt 是一个很优雅的处理输入的一个模块,docopt可以根据你写的文档描述,可以自动为你生成解析器,可以非常容易的为你的python程序创建命令行界面。

4. 主程序

4.1 处理url

4.2 输出

运行结果:

5. 使用prettytable模块 优雅的输出

详细:

作者 sexycoder 本文转载自简书,转载需授权

查火车时刻表12306

12306车票查询,具体步骤如下:

手机:小米11。

系统:MIUI 11.0.3。

软件:铁路123065.2.11。

1、打开铁路12306软件。

2、在软件首页,点击地点—>在弹出的界面中选择出发的地点,到达的地点。

3、可以看到图片上的地址。

4、在软件首页,点击时间—>在弹出的界面中选择出行的时间。

5、选择车票,更改完成后,在弹出的界面中选择需要的车票。

6、查看时刻表,点击车票右侧的箭头图标,即可弹出车票的时刻表。

关于火车票按车次查询winform源代码和的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。

版权说明:如非注明,本站文章均为 AH站长 原创,转载请注明出处和附带本文链接;

本文地址:http://ahzz.com.cn/post/18099.html


取消回复欢迎 发表评论:

分享到

温馨提示

下载成功了么?或者链接失效了?

联系我们反馈

立即下载