2024年4月21日发(作者:)

-

92

-

科学技术创新2020.20

基于Python的火车购票软件设计

鞠耀辉陈伟利张佳琦张晶亮何振豪

吉林

长春130118)(吉林建筑大学,

寒(暑)假学生

潮和景点的旅游旺季等,

出行难的问题,抢票浏

摘要:针对春运、法定节假日

人们抢票难

通过对抢票软件

计开发了基于Python爬虫技术的火车购票系统。

系统利用Python爬虫技术模拟浏览器访问12306览器等购票方式的分析,

中转站点、将散票通

过数据拼接技术分网站

采集特定车次的起始站点

终点分段车票信息,充分应用数据挖掘技术,(分段车票

段购票,完成购票

高效;便民

关键词:购票;免费;

中图分类号:TP311.52文献标识码:A文章编号:2096-4390(2020)20-0092-02

1研制背景及意义

时间行程等太高时,进行下一个方案

。根据席位的差别进行席

只需

近些年来,中国的铁路正在高速的发展

。交通越来越便利,

位交叉换乘,即购买同车另一个或另一种席位的中转票

全国各大景点节假日人

切换席位就能达到中转的目的。如

果席位切换也不行时,若是

节假日选择出行的人数正在不断增多,

有一两个站

流量都特别大,有来自全国各地的游客游访

。铁路出行以其快

购票者愿意多购买一站,还可以在分段的行程中,

吸引了更多人去选择。与此同

点的重叠,

购票者同时买了两张

速、准时、经济、舒适的几大优势

也就是说在其中的两站之间,

时,相应的购票问题就出现了,尤其在春运、法定节假日、寒(暑)票,但也能够达到同车换乘的目的。叠加换乘也不行,那就通过

假学生潮和景点的旅游旺季等,往往是一票难求,出行困难。网购买少数站站票的方式实现购票。即购买某两个无剩余票站点

络购票的兴起,让各种抢票攻略出现,各种抢票软件应运而生,之间的站票,使得用户前一段行程有座位,中间站一会,后一段

又受到官方系统的

行程也有座位。但要保证站票的时间不能太长。同

车换乘是最

甚至还收取一定费用。由于票源始终有限

但能否抢到,

优的方案,

同时有效利用车票的零散

限制,即使购票人肯额外花钱,选择抢票加速包

避免了换车的时间损失

在上一个方案无法

有运气的成分,可能仍然没有足够票可买

。有的软件在为我们

资源。此上的这些方案为层层递进的关系

既没有帮助购票者出行更

进行下去时,购票的同时,默认选择抢票加速包

才会进入到下一种方案的计算

。这些数据是实时

多次计算获取购票方案。

加便利,还增加了出行费用,加大了上述种种问题需要利用科采集的,即可通过不同时间,

技创新来得到更好地解决

2.3算法

中间站点、终点数

2设计方案

关于算法部分,要求计算建立标记起点

2.1方案构想据信息。

本作品的研究思路是基于了解目前所能搜索到的各种火某线路(如图1所示),起点为a

0

,终点为a

n

在起点到终点

以及对于对于

之间有a

1

车购票网站,并充分考虑了现今购票时的不足,a

2

等站点,现在就需要建立一个车票信息数据库

结合

Python技术的基体如下

节假日等时间乘客买不到票问题的调研,

a

0

→a

1

、础,自主设计了一种新的解决方案

。在解决乘客买不到票的同

2.3.1使用Python爬虫技术

a

0

→a

2

、a

0

→a

3

……a

0

有票、具

时,尽量减少时间、行程,并加强对于零散资源的利用的目的。a

n-1

、a

0

→a

n

并标记为

b

01

、b

02

、b

03

……b

0n-1

、b

0n

,数据包括

无票

3种,2.2整体设计及运行方案体张数

及相应的席位信息等

起点、中间站

在该软件运行之前,先导入火车运行车次

2.3.2同理建立a

1

→a

2

、a

1

→a

3

……a

1

→a

n-1

、a

1

→a

n

并标记为

点、终点及时间信息构成链状数据结构。然后建立标记起点,可b

12

、b

13

、b

14

……b

1n-1

、b

1n

,数据包括:有票、具体张数、无票3种,及

任意转换线路的中间点,终点。之后建立分段的车票价格、运行相应的席位信息等;

时间,这个时间包括了出发时间及到达时间。再建立优选方案,2.3.3最后建立a

n-1

→a

n

并标记为:b

n-1n

,数据包括:有票、具

其次是同车换乘,最后才

体张数

、无票

3种,在乘客进行购票时,自动优选直达票

及相应的席位信息等

n-1)会选择中转车站,并且车站尽量选择同一站或相近的车站

。之

2.3.4数据共有

+(n-2)+(n-3)+……+2+1=n(n-1)/2;

在服务器上运行

Python算法程序以达到接后建立硬件服务器

2.3.5数据拼接

导出最优的查询

b

0m

+b

mn

的可行性

,其中

收手机APP和WEB信息的目的。通过算法的计算

(1)1点换乘:在有票的条件下

乘车方案,提供给用户

am就是同车换乘中转站点

提供给用户免费使查询

b

0m

+b

ml

+b

ln

的可行性

在完成手机APP的编写及运行测试后

(2)2点换乘:在有票的条件下

也可以在遇到购票上的困难时

其中a

m

、用。用户可以直接使用此软件,a

l

就是同车换乘中转站点

使用该软件。用户进行购票时,对用户输入的起点、终点及具体(3)多点换乘:在有票的条件下,查询b

0m

+b

ml

+……+b

kn

的可

车次进行数据采集,通过计算好的优选方案优先向用户推荐直行性,其中a

m

、a

l

……a

k

就是同车换乘中转站点;

即在用户考虑

达票,直达无票的情况下,直接使用同车换乘的方案

(4)上述方法无法实现时,“席位切换”的方式实现购

其中

a

、、

不需要换座换车的同时达到中转的目的。一

站如果达不到目的

票,即标记ba、bb、bc、bd等信息

(商务座

b(一等座

c

、在数据拼接时,增加

(转下页

那就增加到两站、三站。在这种方案进行不下去或者耗费费用(二等座

d(站票)为席位种类,

吉林省教育厅大学生创新创业训练项目

——

—基于Python爬虫技术的火车购票系统设计(2)。

2020.20科学技术创新

-

93

-

智能制造系统研究及趋势分析

周艳聪张波王岩胡德计陈聪

(天津商业大学信息工程学院,天津300134)

《中国制造

2025》摘要:自国家正式部署战略以来

各国各厂商均从制造业基础零部件的智能制造入手,对现有的制造装备

构建

智能制造生产线、

智能制造工厂和

智慧制造社区,进行智能化升级改造

智能制造车间

掀起了整个制造方法和制造模式的

核心技术以

及智能制造未来发展趋势,

旨在为相关产业提供

参考

变革。阐述了智能制造系统的特征

人工智能

关键词:智能制造;中国制造

中图分类号:F273,F425文献标识码:A文章编号:2096-4390(2020)20-0093-02

1概述

随着科技的发展

传统的信息技术逐步更新换代,人工智

能、虚拟现实等高新技术的迅猛发展

重新定义了现有的工业

传统的制造技术与新兴科技相融合

为制造业注入了新鲜血液

与活力。高新技术进入现有的制造领域

改造了现有的生产结

构,实现现实生产与虚拟管理互联,将生产制造流程全程网络

化,通过虚拟网络连通生产、销售、服务,将传统的生产制造变

成智能制造。智能制造已成为当今各制造大国主要发展战略,

是加快推进中国传统制造业企业管理创新思维能力不断发展

提质增效,实现从制造大国向制造强国转变的重要方法

是国

家机械制造业水平的重要标志

,是

国家的基础产业和支柱产

业。

2智能制造概述

2.1智能制造简介

智能制造将人工智能技术应用于制造业

构成了人机一体

化的智能系统。利用人和智能机器合作理念

有效提高生产效

推理、设计

率,规范生产流程。由于智能机器具备一定的分析

能力

因此不论是在批量产

还是在精细加工方面

都可以顺应

自如。

2.2智能制造特征

智能制造与传统制造相比,有自律、人机一体化、虚拟现实

和自我学习维护等特征。自律指智能制造机器有强大的数据支

撑系统,运行时可以将环境数据与自身信息相结合

进行分析

判断并做出最优规划方案。人机一体化指目前所生产的智能制

造机器只具备一定的逻辑推理思维

也可做到图像思维

但要

具备人类的灵感思维

则需要人按照实际情况修改程序

才能

使机器具备最大效能。虚拟现实特征指智能机器通过数据采

智能模拟等多项

(转下页

集、影像修复、环境分析、传感设置、

“席位切换”。可能得到如下信息

ba

0m

+bb

ml

+……+bc

kn

,其中a

m

、a

l

……a

k

就是同车换乘中转站点;

(5)上述方法无法实现时,考虑“少叠加换乘”的方式实现购

其中

a

、、

票,即标记ba、bb、bc、bd等信息

(商务座

b(一等座

c

、在数据拼接时,增加”

(二等座

d(站票)为席位种类

少叠加换

乘”。可能得到如下信息

ba

0m

+1+bb

m-1l

+……+bc

kn

,其中a

m-1

、a

m+1

、a

l

……a

k

就是同车换乘中转站点

考虑

(6)上述方法无法实现时,“少行程补票换乘”的方式实

即标记

ba、

其中

a

现购票,bb、bc、bd等信息

(商务座

b(一等

、在数据拼接时,增加

座)、c(二等座

d(站票)为席位种类

“少叠

加换乘”。可能得到如下信息

ba

0m-1

+bd

m-1m

+1+b

bm+1l

+……+bc

kn

中a

m-1

、a

m+1

、a

l

……a

k

就是同车换乘中转站点;

同车换乘数学模型

考虑

(7)上述方法无法实现时,“2车或2车以上换乘”的方

(尽量选择同一车站点),再确定

式实现购票,首先选择中转车站

(目前很多车站提供换乘快

具体车次信息,必须考虑中转时间

比如:“

2车换乘”

就变

速通道),车次晚点等因素。(详见图所示)

成“2个同车换乘”,再应用上述的“同车换乘”的方法实现分段

购票。

2车以上换乘”同理

也就变成了“多个同车换乘”,再应用

换乘中转站点

上述的“同车换乘”的方法实现分段购票。

只是,

其中不确定因素也就越多。

越多,耽误的换乘时间也就越多,

精准便捷的针

市面上现有的火车票购票程序不能高效的、

对不同用户做出最符合其需求的火车票推荐方案。现在的购票

软件仅仅依靠12306网站购票系统为核心,通过自有服务器的

强大刷票能力进行抢票而已。在火车票资源不足时不能依靠自

身的逻辑为用户提供一套最为适应的替代方案进行购票

。而我

有票直接

们的项目可以计算起点到终点间车次及车票的情况

进行

购买。直达无票的情况下,在无票的车次上先一个中间站

分段式购买,其中遵循用户需求可以通过购买不同等级座位的

方式来完成同车中转到站的方法来实现用户需求

。如果仍然无

票,智能选择中转站,将购票形式转换成起点-中转-终点

。如

中间车次分解进行数据统

果仍然无票,将起点车次、终点车次

计,采用神经网络多元算法,在有票的情况下,计算有效通路,并

实现购票。

抛弃路程过长,路程较高和中转过多的选择方案

3结论

3.1应用基于Python语言的爬虫技术

Python已成为目前

可操作

第三大主流编程语言,相较于前两种语言跟容易入门

性更高Python爬虫技术作为二者结合它的适应性更为强大。

3.2我们设计的软件算法更能贴合用户需求

,做到能最大

能在可行范围内

限度满足用户的个性,减少用户出行的麻烦

实现同车多次换乘达到一辆车次在各个阶段都有票的情况下

使用户抵达目的地。

3.3在爬虫技术的应用下更快速的到最新的火车票信息

做到真正的在售票厅外得知每辆车每个站点之间的票务信息

帮助用户快速方便购票